如何根据XML(或其他存储方式)动态生成一个对象(求大神)
比如我有一个xml文件
<?xml version="1.0" encoding="utf-8" ?>
<Root>
<AuthorInfo>
<property name='AuthorID' type='varchar' length='20'></property>
<property name='AuthorName' type='varchar' length='20'></property>
</AuthorInfo>
</Root>
则相应的生成AuthorInfo的对象,对象属性为如下:
string AuthorID;
string AuthorName;
注意程序集没有AuthorInfo类,这个是需要完全动态生成的。
如何实现,,,求CODE,,
------解决方案--------------------C#是强类型语言,不可能在运行时创建类
------解决方案-------------------- dynamic a = new System.Dynamic.ExpandoObject();
a.AuthorID ="";
a.AuthorName="";
这个可行?
------解决方案--------------------自己解析XML文档就行了啊
------解决方案--------------------http://stackoverflow.com/questions/13704752/deserialize-xml-to-object-using-dynamic
------解决方案--------------------匿名类可以在方法内有效,出了方法就无效了
var entity = new {AuthorID="Read From XML",AuthorName="Read From XML"};
------解决方案--------------------整啥类啊,搞个Dictionary对象就行了呗。
其他可以动态创建类的语言,那些类本质上来说都是一个Dictionary而已。