Вопрос по object, oop, translation, javascript, c# – Как создать класс динамически

15

ли простой способ создать и установить объект и свойства в C #, как вы можете в Javascript.

Пример Javascript:

var obj = new Object;

obj.value = 123476;
obj.description = "this is my new object";
obj.mode = 1;
Хм, вы имеете в виду создание объекта в целом или создание фактическогоSystem.Object и добавление свойств динамически? Yuck

Ваш Ответ

4   ответа
14

если вы хотите создать несвязанный объект, используйтеExpandoObject.

dynamic employee, manager;

employee = new ExpandoObject();
employee.Name = "John Smith";
employee.Age = 33;

manager = new ExpandoObject();
manager.Name = "Allison Brown";
manager.Age = 42;
manager.TeamSize = 10;

Другой вариант - использоватьанонимный класс , но это будет работать для вас, только если вы будете использовать его в области действия метода, поскольку информация о типе объекта не может быть доступна извне области действия метода.

2

такие как Expando Object ... см. Эту тему:

Как создать класс динамически

24

попробуйте c # анонимные классы

var obj = new { 
    value = 123475, 
    description = "this is my new object", 
    mode = 1 };

Есть много различий, хотя ...

@ Валера Колупаев & @GlennFerrieLive упомянул другой подход сдинамический ключевое слово

5

В C # вы можете сделать:

var obj = new SomeObject {
    value = 123476,
    description = "this is my new object",
    mode = 1
};

РЕДАКТИРОВАТЬ: Держать это здесь в ожидании разъяснения от ОП, поскольку я, возможно, неправильно понял его намерения.

,

Похожие вопросы