Hi,
I need to invoke .getvalue and .setvalue on fieldinfo and propetyinfo
objects. Even though they're both derived from MemberInfo, they don't
share those two methods. I've finding myself writing the following
types of structure over and over. Is there something I'm missing? Or
some 'funky' 3.5 delegate/lambda expression way of doing this?
Thanks very much in advance,
Damien
MemberInfo MI = this.GetType(). GetMember(Membe rName)
[0];
object ValueToSet = oDT.Rows[0][col.ColumnName] ??
"";
try
{
//It doesn't seem that Fieldinfo and Propertyinfo
// have a common ancestry, therefore no common map
to .SetValue.
switch (MI.MemberType)
{
case MemberTypes.Fie ld:
((FieldInfo)MI) .SetValue(this,
ValueToSet);
break;
case MemberTypes.Pro perty:
((PropertyInfo) MI).SetValue(th is,
ValueToSet, null);
break;
default:
break;
}
}