如何动态创建一个类

时间:2011-07-05 19:09:57

标签: c# dynamic

我需要动态创建一个类对象。我尝试使用动态关键字。

dynamic dataTransferObject = new dtoClass();
                dataTransferObject.Property1= "someValue";
                dataTransferObject.Property2= "someOtherValue";

                LogicLayer.Update(dataTransferObject);

我将解释该对象以在逻辑层内执行进一步的操作。编译器不喜欢我的语法,请指教!

3 个答案:

答案 0 :(得分:7)

使用ExpandoObject来完成此任务。

dynamic dataTransferObject = new System.Dynamic.ExpandoObject();
dataTransferObject.Property1 = "someValue";
dataTransferObject.Property2 = "someOtherValue";

答案 1 :(得分:1)

我认为这可能就是你要找的东西!

http://www.hanselman.com/blog/NuGetPackageOfTheWeek6DynamicMalleableEnjoyableExpandoObjectsWithClay.aspx

转到“Expandos and Dynamic”部分 - 它允许您执行以下操作:

var person = New.Person();
person.FirstName = "Louis";
person.LastName = "Dejardin";

斯图

答案 2 :(得分:-1)

尝试使用匿名类型。检查以下代码:

var v = new { Property1 = "someValue", Property2 = "someOtherValue" };

匿名类型提供了一种将一组只读属性封装到单个对象中的便捷方法,而无需先显式定义类型。