怎么将某个对象中的未知引用类型属性自动实例化
如何将某个对象中的未知引用类型属性自动实例化?
//现在假设eUser类是未知的,我只知道 eReply 中有个属性名字字符串叫做"User",我如何将 reply.User进行实例化?
------解决方案--------------------
object obj = Activator.CreateInstance(typeof(eReply).GetProperty("User").PropertyType);
reply.GetType().GetProperty("User").SetValue(reply, obj, null);
------解决方案--------------------
这就是Oject-Relational-Mapping,简写就是ORM。
ORM框架已经很多了,流行而且免费的有NHibernate,有微软的Entiry Framework等等。
你可以直接使用他们。即使你真想重新造轮子,你也应该借鉴其他ORM的做法。
public class eUser
{
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
}
public class eReply
{
private eUser user;
public eUser User //在这里有一个eUser 类对象
{
get { return user; }
set { user = value; }
}
}
eReply reply=new eReply();
//现在假设eUser类是未知的,我只知道 eReply 中有个属性名字字符串叫做"User",我如何将 reply.User进行实例化?
------解决方案--------------------
object obj = Activator.CreateInstance(typeof(eReply).GetProperty("User").PropertyType);
reply.GetType().GetProperty("User").SetValue(reply, obj, null);
------解决方案--------------------
这就是Oject-Relational-Mapping,简写就是ORM。
ORM框架已经很多了,流行而且免费的有NHibernate,有微软的Entiry Framework等等。
你可以直接使用他们。即使你真想重新造轮子,你也应该借鉴其他ORM的做法。