動的ビューがあります。これには、渡されたモデルが表示されます。
@model dynamic
@using (Html.BeginForm("Edit", null, FormMethod.Post, new { id="FrmIndex" }))
{
@Html.ValidationSummary(true);
@Html.EditorForModel()
<input type="submit" value="Edit" />
}
私のモデルの 1 つが PartyRole だとします。
public partial class PartyRole
{
[Key, Display(Name = "Id"]
[UIHint("Hidden")]
public int PartyRoleId { get; set; }
[UIHint("TextBox")]
public string Title { get; set; }
}
編集モードで Id を表示したくないので、以下のように Hidden.cshtml editorfortemplate で非表示にしています。
@Html.HiddenFor(m => Model)
これはエディターを隠していますが、ラベル「Id」は隠していません。ここで提供されている回答は使用できません@Html.EditForModel() からフィールドを除外するが、Html.DisplayForModel() を使用して表示する方法
IMetadataAware には System.Web.Mvc 名前空間が必要なため、poco モデル クラスを持つ Biz プロジェクトに追加できません。これもweb.mvcのパーティなので [HiddenInput(DisplayValue = false)] は使えません
誰かが解決策を与えることができますか??