Asp.net mvc 在ASP.NETMVC5的创建视图中隐藏主键列

Asp.net mvc 在ASP.NETMVC5的创建视图中隐藏主键列,asp.net-mvc,Asp.net Mvc,我有一个从数据库SQL Server生成的模型,其中包含属性TaskPKPrimary Key和SQL中的自动增量。当我生成一个create视图时,这个属性也会显示出来。但是当我有一个属性IDPrimary Key和Auto Increment时,这个属性没有显示在create视图中,但是值仍然存在 如何对我的TaskPK属性执行此操作 图片视图: Pict模型:是的,您需要在模型中写入以下代码以隐藏主键字段 [HiddenInputDisplayValue=false] Public int

我有一个从数据库SQL Server生成的模型,其中包含属性TaskPKPrimary Key和SQL中的自动增量。当我生成一个create视图时,这个属性也会显示出来。但是当我有一个属性IDPrimary Key和Auto Increment时,这个属性没有显示在create视图中,但是值仍然存在

如何对我的TaskPK属性执行此操作

图片视图:
Pict模型:

是的,您需要在模型中写入以下代码以隐藏主键字段

[HiddenInputDisplayValue=false]
Public int TaskPK{get;set;}

如果要在视图中隐藏某些属性,只需使用以下帮助程序:

@Html.HiddenForx=>x.YourModelItem

因此,在您的代码中,您需要更改:

@Html.EditorFor(model => model.TaskPK, new { htmlAttributes = new { @class = "form-control" } })
致:


您可以在视图和模型中发布代码示例吗?这是视图代码模型代码,您可以在razor语句中替换HiddenFor而不是EditFor for TaskPK。我这样做了,但出现错误TaskPK字段是必需的。已经这样做了。但是仍然得到了错误。TaskPK字段是必需的。您确定已将TaskPK设置为主键吗?看来你根本没有那样做。是的,我肯定。我已经在Sql Management Studio中定义了它。如果我忘记了,很抱歉,TaskModel在ViewModel类中。从sqlserver生成的实际模型位于business Objects中,TaskPk隐藏在视图中,但我得到的错误是TaskPk字段是必需的
@Html.HiddenFor(model => model.TaskPK, new { htmlAttributes = new { @class = "form-control" } })