我可以创建一个匿名类型变量,然后添加更多属性吗?
E.g。
var x = new { Name = "Ahmed" };
并希望将Age
添加到其中?
我怎么能这样做?
另一个问题:我在一些博客上看到类型AnonymousType
这个类的名称空间是什么?这是例子http://www.codeproject.com/KB/cs/AnonymousTypesInCSharp.aspx
答案 0 :(得分:6)
第一个问题 - 你不能。
第二个问题 - AnonymousType是该文章的作者创建的类型。您必须下载其项目的源代码才能使用该类型。
答案 1 :(得分:0)
不,你不能。
第二个问题:没有这样的事情,它可能会引用您无法访问的编译器生成的类。
答案 2 :(得分:0)
不,这对您的申请来说效率不高。 你确信你不想介绍某种类吗?
using System;
class Generic{
public void doSomething(){}
private string name;
private string _othreFeature;
}
您可以随时使用新功能扩展它。
答案 3 :(得分:0)
这是一个完全合乎逻辑的问题......我使用Java和C#这两个都是我的一个很大的宠儿......事实上几乎每种语言都有某种类型的匿名类型lol ... PHP ,JavaScript,C#,vb(全部),列表继续......
当您基本上将数据投入到对象中并且不需要为其创建类时,这是一个非常有用的功能。
事实上这正是LINQ所使用的......
var someObject (can be interable/Enumerable) =
from p in products
where p.id == 123
select new { productid };
等等,你明白了......这非常有用...... :-)
干杯!