protected override void SetObjectProperty(string name, object value)
{
PropertyInfo propertyInfo = this.messageType.GetProperty(name, publicBinding);
if(null != propertyInfo && propertyInfo.CanWrite)
{
propertyInfo.SetValue(this.message, value, null);
}
else
{
FieldInfo fieldInfo = this.messageType.GetField(name, publicBinding);
if(null != fieldInfo && !fieldInfo.IsLiteral && !fieldInfo.IsInitOnly)
{
fieldInfo.SetValue(this.message, value);
}
else
{
base.SetObjectProperty(name, value);
}
}
}