例如,那里是ControllerBase类的ViewBag属性,我们可以动态获取/设置值并向此对象添加任意数量的其他字段或属性,这很酷。我想在MVC应用程序和Controller类之外使用类似的东西在其他类型的应用程序中。当我尝试创建dynamic对象并设置其属性时,如下所示:1. dynamic MyDynamic = new { A="a" };2. MyDynamic.A = "asd";3. Console.WriteLine(MyDynamic.A);我收到了带有消息属性或索引器' f__AnonymousType0.A'的RuntimeBinderException,无法分配给它-它仅在第2行中是。另外,我建议它不是我要找的东西。也许有一些上课可以让我做类似的事情:??? MyDynamic = new ???();MyDynamic.A = "A";MyDynamic.B = "B";MyDynamic.C = DateTime.Now;MyDynamic.TheAnswerToLifeTheUniverseAndEverything = 42;具有动态添加和设置属性。 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 dynamic MyDynamic = new System.Dynamic.ExpandoObject();MyDynamic.A = "A";MyDynamic.B = "B";MyDynamic.C = "C";MyDynamic.Number = 12;MyDynamic.MyMethod = new Func<int>(() =>{ return 55;});Console.WriteLine(MyDynamic.MyMethod());阅读有关ExpandoObject class的更多信息和更多示例:表示一个对象,其成员可以在运行时动态添加和删除。 (adsbygoogle = window.adsbygoogle || []).push({}); 07-24 21:53