INSERT与EF后的只读字段

时间:2016-02-08 14:29:28

标签: c# entity-framework code-first

实体框架,代码优先

我有一个有很多领域的模型。一个字段("名称")我不想编辑,但在插入后只读。但我仍然希望将此字段显示为我的"编辑" form(和用于编辑的viewModel)。我希望将其显示为只读文本框(例如@ Html.TextBoxFor(c => c.Name,new {@readonly =" readonly"}))但如果有人更改它&#39 ; s值与浏览器dev.tools不应保存到DB。

有没有一些漂亮的方法呢?

现在我从DB获取实例并设置" Name"表单数据字段从DB返回值。

2 个答案:

答案 0 :(得分:0)

处理从前端发送的ViewModel时,在将它们保存到数据库之前忽略“只读”字段。 AFAIK EF不支持忽略属性。

答案 1 :(得分:0)

使用Entity Framework解决此问题的一种方法是创建数据库模型和视图模型。保存时,请确保后端有CRUD翻译。

function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
    } else {
        throw "Geolocation is not supported by this browser.";
    }
}
function showPosition() {
    // my code
}
getLocation();