假设您有这样一个模型属性:
[Display(Name = "Length (ft)"]
public double LengthFt {get; set;}
现在您需要另一个长度以米为单位的属性,该属性将用于输入和输出表单:
[Display(Name = "Length (m)"]
[NotMapped]
public double LengthMeters
{
get => LengthFt * 0.3048;
set => LengthFt = value / 0.2048;
}
这行吗?我的(一个比这个复杂得多的例子)正在处理“get”部分(在设置lengthft时正确返回lengthemeters),并且正在处理create表单(来自asp.net core mvc的标准create视图),但是没有处理编辑。编辑表单显示正确的初始值,但是当我覆盖它并单击“保存”时,两个字段现在都是0。就像编辑没有看到对notmapped元素的更改,但是create操作看到了。
有没有更优雅的方法来处理这些类型的转换?