我有一个类,其中包含另一个具有简单 get set 属性的 poco 类:
public class PersonalInformation {
public string FirstName { get; set; }
public string FirstSomethingElse { get; set; }
}
我想知道当前实例的 PersonalInformation.FirstName 是否有值。我不知道如何通过反射获得它:
foreach (PropertyInfo property in this.PersonalInformation.GetType().GetProperties())
{
if (property.Name.Contains("First"))
{
if (property.GetValue(XXX, null) != null)
do something...
}
}
我的实例是“this”,它不起作用,this.PersonalInformation 也不起作用。我究竟做错了什么?
谢谢您的答复,
阿尔多
附录:我正在使用 ASP.NET MVC3。在我的剃刀观点中,我可以很容易地做到以下几点:
foreach (var property in Model.PersonalInformation.GetType().GetProperties())
{
<div class="editor-line">
@if (property.Name != null)
{
<label>@(property.Name)</label>
@Html.Editor(property.Name)
}
</div>
}
有一个 property.Value 成员返回字段的当前值。如上所示,该字段来自 poco 类。代码隐藏中的等效代码是什么?