相关疑难解决方法(0)

ExpandoObject的真正好处是什么?

添加到.NET 4 的ExpandoObject类允许您在运行时任意设置对象的属性.

使用a Dictionary<string, object>或者甚至是Hashtable有什么优势吗?据我所知,这只是一个哈希表,您可以使用稍微简洁的语法访问.

例如,为什么这样:

dynamic obj = new ExpandoObject();
obj.MyInt = 3;
obj.MyString = "Foo";
Console.WriteLine(obj.MyString);
Run Code Online (Sandbox Code Playgroud)

真的比以下更好,或者大不相同:

var obj = new Dictionary<string, object>();
obj["MyInt"] = 3;
obj["MyString"] = "Foo";

Console.WriteLine(obj["MyString"]);
Run Code Online (Sandbox Code Playgroud)

使用ExpandoObject而不是仅仅使用任意字典类型可以获得什么真正的优势,除了不明显你正在使用将在运行时确定的类型.

.net c# .net-4.0 c#-4.0

573
推荐指数
7
解决办法
12万
查看次数

如何在C#中创建动态属性?

我正在寻找一种方法来创建一个具有一组静态属性的类.在运行时,我希望能够从数据库向此对象添加其他动态属性.我还想为这些对象添加排序和过滤功能.

我如何在C#中执行此操作?

c#

86
推荐指数
5
解决办法
13万
查看次数

C#中的动态类创建

是否有可能在运行时从DataTable创建一个类,其中ColumnName将是动态类属性?

c# class dynamic

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×3

.net ×1

.net-4.0 ×1

c#-4.0 ×1

class ×1

dynamic ×1