public void SetKeyValue(object value) { if (value != null && value!=DBNull.Value) { var settable = value.ChangeTypeTo<string>(); this.GetType().GetProperty(this.KeyName()).SetValue(this, settable, null); } }