在php中我们可以创建像这样的标准类和objes
< ?php
$ car = new stdClass;
$ car-&gt; Color ='black';
$ car-&gt; type ='sports';
的print_r($车);
?&GT;
在C#.net中是否有类似的方法? 我对C#很新,任何人都可以帮忙???
答案 0 :(得分:10)
您可以在C#中使用Anonymous Types,例如:从链接中获取:
var v = new { Amount = 108, Message = "Hello" };
Console.WriteLine(v.Amount + v.Message);
请注意备注部分的限制(例如,只能转换为对象)等。
答案 1 :(得分:8)
C#是静态类型的,因此必须先声明常规类才能使用它们。但是,匿名类型允许您基于初始化声明类。声明后,既不能改变类型也不能改变实例。
对于更动态的方法,请查看允许动态添加属性的ExpandoObject。这需要C#4,并且必须将引用声明为动态。
dynamic car = new ExpandoObject();
car.Color = "Black";
car.Type "Sports";
答案 2 :(得分:3)
您可以使用匿名类型,但它们并不完全相同:http://msdn.microsoft.com/en-us/library/bb397696.aspx
C#真的是关于强类型的,所以弱类型支持非常弱。根据您在这里实际执行的操作,匿名类型可能有效,但通常您应该在使用C#编码时创建实际类。对于上面的Car
示例,我通常会创建一个类。这是更多的代码,但这就是C#的方式。 PHP你可以用10个PHP文件创建一个应用程序,但同样的C#应用程序最终可能会达到20-30个。