我将一个实体模型传递给我的视图,其中包含一些隐藏的和适用于相应字段的编辑器。
当我提交表单时,我的所有成员都在控制器中遇到了。但是,我扩展了我的实体模型,以便附加一个字段来附加到字段。
public string DescriptionAdd {
get { return ""; }
set { DescriptionHistory += DateTime.Now.ToString("dd MMM yyyy : hh:mm tt") + " by " + Core.Authorization.LoginUser.Current.FullName + " <span style='display:none;'>" + Core.Authorization.LoginUser.Current.EmailAddress + "</span> " + value + "<br />"; }
}
好的,到目前为止一切似乎都很好。
但是,当我点击保存时,DescriptionHistory为空。但是,当控制器实际上在调试器中停止时,DescriptionHistory具有原始值。
这让我觉得它以错误的顺序加载它们。是否可以指定成员绑定的顺序?
答案 0 :(得分:0)
好的,如果我正确理解你想要将DescriptionHistory和一些系统驱动的值保存到Description列上的基础表中随时保存。
这是通过扩展原始实体类
来实现它的方法Ex:对于您的原始实体,如下所示
public partial class Employee
{
public string Description
{
get;
set;
}
}
您可以通过少量调整进行扩展和注释,以满足您的需求
[MetaDataType(typeof(EmployeeMetaData))]
public partial class Employee
{
[Column("Description")]
public string DescriptionAdd
{
set { }
get { return DateTime.Now.ToString("dd MMM yyyy : hh:mm tt") + " by " + Core.Authorization.LoginUser.Current.FullName + " <span style='display:none;'>" + Core.Authorization.LoginUser.Current.EmailAddress + "</span> " + value + "<br />"; }
}
}
public class EmployeeMetaData
{
[NotMapped]
public string Description
{
get;
set;
}
}
希望这符合您的需求。