【发布时间】:2012-10-03 13:17:17
【问题描述】:
例如,ControllerBase 类的 ViewBag 属性,我们可以动态地获取/设置值并向该对象添加任意数量的附加字段或属性,这很酷。除了 MVC 应用程序和其他类型的应用程序中的 Controller 类之外,我想使用类似的东西。当我尝试创建dynamic 对象并将其属性设置如下:
1. dynamic MyDynamic = new { A="a" };
2. MyDynamic.A = "asd";
3. Console.WriteLine(MyDynamic.A);
我有 RuntimeBinderException 和消息 Property or indexer 'f__AnonymousType0.A' cannot be assigned to -- it is read only 在第 2 行。另外,我怀疑它不完全我在找什么。也许有一些课程可以让我做类似的事情:
??? MyDynamic = new ???();
MyDynamic.A = "A";
MyDynamic.B = "B";
MyDynamic.C = DateTime.Now;
MyDynamic.TheAnswerToLifeTheUniverseAndEverything = 42;
具有动态添加和设置属性。
【问题讨论】: