MVC 3プロジェクトで[HiddenInput(DisplayValue=false)]の場合、ページファイルにはその属性は非表示になりません
1319 ワード
はい.NET MVC 3 Frameworkのサンプルアイテムには、次のコードがあります.
ここで本の意味では、[HiddenInput(DisplayValue=false)]というコードの機能はVSに、フロントページにProductID属性を隠すように伝えることです.
しかし、実行中にProductIDが表示された.
なぜなら、自分が使用するのはVS 2012であり、データ層の項目に追加するSystemであるからである.Web.Mvcの参照は4.0バージョンで、プロジェクト自体は3.0バージョンです.プロジェクトがMVC 4.0ならこの問題があるかどうか分かりません.
後日さらに検討する.
public class Product
{
[HiddenInput(DisplayValue=false)]
public int ProductID { get; set; }
public string Name { get; set; }
[DataType(DataType.MultilineText)]
public string Description { get; set; }
public decimal Price { get; set; }
public string Category { get; set; }
}
ここで本の意味では、[HiddenInput(DisplayValue=false)]というコードの機能はVSに、フロントページにProductID属性を隠すように伝えることです.
<h2>Edit @Model.Name</h2>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@using (Html.BeginForm()) {
@Html.EditorForModel()
<p>
<input type="submit" value="Save" />
</p>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
しかし、実行中にProductIDが表示された.
なぜなら、自分が使用するのはVS 2012であり、データ層の項目に追加するSystemであるからである.Web.Mvcの参照は4.0バージョンで、プロジェクト自体は3.0バージョンです.プロジェクトがMVC 4.0ならこの問題があるかどうか分かりません.
後日さらに検討する.