【发布时间】:2012-07-17 11:18:26
【问题描述】:
请参阅下面的代码,有人可以帮助我....
public class person
{
Public string name { get; set; };
Public personDetails Pdetails { get; };
}
public class personDetails
{
Public bool hasChild { get; set; }
Public string ChildName { get; set; }
}
static void Main(string[] args)
{
Type type = asm.GetType(person);
object classInstance = Activator.CreateInstance(type);
PropertyInfo prop = type.GetProperty("Pdetails ", BindingFlags.Public | BindingFlags.Instance);
if (null != prop && prop.CanWrite)
{
prop.SetValue(classInstance, null , null);
}
}
获取未找到属性的错误。
【问题讨论】:
-
将您的类型名称大写!另外,这个
string?到底是什么?字符串是一个引用类型。 -
顺便说一句,你的外壳伤了我的眼睛!看看msdn.microsoft.com/en-us/library/ms229043.aspx 大写规则。
-
你是在写这样的代码还是对 SO 来说太难看了?
type.GetProperty("Pdetails "属性名称不能包含空格。 -
此代码无法编译,因为
Type type = asm.GetType(person)后面没有分号 -
感谢重播,我尝试使用带有控制台应用程序的动态加载 dll。我的问题是如何设置类 personDetails 属性的成员
标签: c# .net reflection properties