Javascript "var obj = new Object" Эквивалент в С#

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

Пример Javascript:

var obj = new Object;

obj.value = 123476;
obj.description = "this is my new object";
obj.mode = 1;

Ответ 1

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

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

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

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

Ответ 2

Если вы хотите создать не привязанный объект, используйте 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;

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

Ответ 3

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

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

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