开发者

Javascript "var obj = new Object" Equivalent in C#

开发者 https://www.devze.com 2023-03-18 02:12 出处:网络
Is there an easy way to create and Object and set properties in C# like you can in Javascript. Example Javascript:

Is there an easy way to create and Object and set properties in C# like you can in Javascript.

Example Javascript:

var obj = new Object;

obj.value = 123476;
obj.description = "this is my new object";
obj.mode 开发者_开发百科= 1;


try c# anonymous classes

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

there are lots of differences though...

@Valera Kolupaev & @GlennFerrieLive mentioned another approach with dynamic keyword


In case, if you want to create un-tyed object use 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;

Your other option is to use anonymous class , but this will work for you, only if you would use it in the scope of the method, since the object type information can't be accessed from outside of the method scope.


In C# you could do:

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

EDIT: Holding this here pending clarification from OP as I may have misunderstood his intentions.


The way to do this is you use C# 4.0 Dynamic types like Expando Object... see this topic:

How to create a class dynamically

0

精彩评论

暂无评论...
验证码 换一张
取 消