2017-10-12 4 views
0

私の目標は、存在するフィールドのリストだけが異なる多くの同様のビューを作成することです。たとえば、多くの場合、異なるモデルと異なるフィールドセットについて、ビューを作成します。以下は、足場Create.cshtmlページからの抜粋です:モデルアトリビュートをラッピングするRazorページパーツのメンテナンス

<div class="form-group"> 
    @Html.LabelFor(model => model.NameText, htmlAttributes: new { @class = "control-label col-md-2" }) 
    <div class="col-md-10"> 
     @Html.EditorFor(model => model.NameText, new { htmlAttributes = new { @class = "form-control" } }) 
     @Html.ValidationMessageFor(model => model.NameText, "", new { @class = "text-danger" }) 
    </div> 
</div> 

<div class="form-group"> 
    @Html.LabelFor(model => model.NameDefinition, htmlAttributes: new { @class = "control-label col-md-2" }) 
    <div class="col-md-10"> 
     @Html.EditorFor(model => model.NameDefinition, new { htmlAttributes = new { @class = "form-control" } }) 
     @Html.ValidationMessageFor(model => model.NameDefinition, "", new { @class = "text-danger" }) 
    </div> 
</div> 

<div class ="form-group"> 
    @Html.LabelFor(model => model.NameComment, htmlAttributes: new { @class = "control-label col-md-2" }) 
    <div class="col-md-10"> 
     @Html.EditorFor(model => model.NameComment, new { htmlAttributes = new { @class = "form-control" } }) 
     @Html.ValidationMessageFor(model => model.NameComment, "", new { @class = "text-danger" }) 
    </div> 
</div> 

私の理解では、部分的なビューを下回ると<div class="form-group"> . . . </div>コードブロックの中で、上記追加できるということです。しかし、私は、モデル属性(例えば、NameText)への参照を消費し、それをコードブロックでラップする機能について認識していません。

また私は、@Helperという命令はRazor(MVC 6)から削除されており、単純な置き換えが行われていないことを理解しています。

Iはすでに上記のスニペット単一部分図にそれを次のコードの一部を先行コードの両方部を配置しています。ちょっとしたトリックで、コードの2つの部分が上記スニペットの周りにマージされ、すべてがブラウザに送信されます。しかし、私はそれ以上のものが必要です。 上記のスニペットのコードの繰り返しも避けるにはどうすればよいですか?以下のための共通のコードのメンテナンスの

  • シングルポイントを入力するフィールド
  • 強いのリストにに関してのみ異なります

    • 多くの同様の見解:私が持っているしたいと思い何

      多くのビュー

    さらに、自分自身で答えを見つけるために検索する必要がありますか?

  • 答えて

    関連する問題