【问题标题】:Using [Bind(Exclude='ID')] in DNX 5 with no System.Web在没有 System.Web 的 DNX 5 中使用 [Bind(Exclude='ID')]
【发布时间】:2016-02-23 12:21:16
【问题描述】:

我读到你可以使用:

[Bind(Exclude="id")]

在通过“创建”操作创建记录时阻止 ID 字段使 ModelState 无效。

DNX Core 5 System.Web 不再可用。是否有等效的方法来忽略自动生成的 ID,或者我是否与此答案在同一条船上:

https://stackoverflow.com/a/34847744/2591770

更新 似乎可以直接从 ModelState 中删除项目,如下所述: https://stackoverflow.com/a/13169910/2591770

我仍然对任何其他选择感兴趣。

【问题讨论】:

    标签: asp.net asp.net-mvc dnx50


    【解决方案1】:

    使用视图模型,然后将发布的值映射到您的实体实例。这样,只有您放置在视图模型上的属性可能会被修改。 Bind 无论如何都是反模式。

    【讨论】:

    • 我希望 [Bind][Include] 从一开始就不存在,因为它们在模型绑定方面引入了非常糟糕的习惯。使用视图模型非常适合 OP 的情况,因此我非常喜欢 +1。
    猜你喜欢
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 2015-05-08
    • 1970-01-01
    相关资源
    最近更新 更多