2016-01-01 30 views
-1

我有一個從數據庫(SQL Server)生成的模型,它包含屬性TaskPK(SQL中的主鍵和自動遞增)。當我生成創建視圖時,此屬性也顯示。但是當我有一個屬性ID(主鍵和自動遞增)時,該屬性在創建視圖中不顯示,但該值仍然存在。在ASP.Net MVC創建視圖中隱藏主鍵列5

如何對我的TaskPK屬性做到這一點?

皮克特查看:ViewCode 皮克特型號:Code Model

+0

請問您可以在視圖和您的模型中發佈代碼示例嗎? – Cyval

+0

這裏是查看代碼http://i.stack.imgur.com/TlXS2.png –

+0

型號代碼http://i.stack.imgur.com/2JCMl.png –

回答

0

如果要隱藏在視圖中的一些屬性,你可以簡單地使用這個助手:

@Html.HiddenFor(x => x.YourModelItem)

所以,在你的代碼,你需要改變:

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

到:

@Html.HiddenFor(model => model.TaskPK, new { htmlAttributes = new { @class = "form-control" } }) 
+0

已經做到了。但仍然有錯誤。 「TaskPK字段是必需的」 –

+0

您確定您已將「TaskPK」設置爲主鍵嗎?看起來你根本沒有這樣做。 –

+0

是的,我確定。我已經在Sql Management Studio中定義了它。如果我忘記了,很遺憾,TaskModel在ViewModel類中。從sqlserver生成的實際模型在業務對象中 –

0

是的,你需要編寫如下代碼到模型中隱藏主鍵字段。

[HiddenInput(DisplayValue = FALSE)] 公衆詮釋TaskPK {獲取;集;}

+0

TaskPk隱藏在視圖中,但出現錯誤「TaskPK字段是必需的」 –