所以我试图将属性值从内部类传递给公共结构。两者都具有相同的属性名称(大小写相同)。我没有收到任何错误,但是结构中的属性未设置。
foreach (UserProfile.UserProfileRecord r in rslt.record)
{
UserProfileRecord upr = new UserProfileRecord();
Type uprType = upr.GetType();
foreach (PropertyInfo p in r.GetType().GetProperties())
{
Debug.WriteLine(p.Name + " : " + p.GetValue(r));
PropertyInfo pi = uprType.GetProperty(p.Name);
pi.SetValue(upr, p.GetValue(r));
Debug.WriteLine(pi.Name + " - " + pi.GetValue(upr));
}
}
调试的输出如下:
city : YERMO
city -
state : CA
state -
zip : 92398
zip -
telephone : 714-256-8463
telephone -
我已经将代码与Microsoft和SO上的其他几个示例进行了比较,但看不到我做错了什么。
我将结构传递回调用方,并将其用作DataGridView的数据源。出现列名称,但单元格为空。休息片刻并查看结构时,我看到所有属性值都为空。
我在做什么错了?