0

mvc4、カミソリビューエンジン。デバッグ モードのときに、パーシャルを含むこのようなスニペットが、挿入されたパーシャルを示すコメントを残すと便利です。私が見つけられない拡張性ポイントはありますか? もちろん、このコメントを部分的なビューに入力することもできますが、それはあまりにも手間がかかりすぎて、誰にとっても楽しいものではありません。

index.cshtml

<div class="somecontainer">
    @foreach(var thing in Model.Things) {
        Html.Partial("ThingPartial",thing)
    }
</div>

ThingPartial.cshtml

@model ThingModel
<h1>@Model.Name<h1>
<p>@Model.Description</p>

このようなhtmlを生成します

<!--razorView:things/index-->
<div class="somecontainer">
  <!--partialView:ThingPartial-->
  <h1>Name 1<h1>
  <p>Description 1</p>

  <!--partialView:ThingPartial-->
  <h1>Name 2<h1>
  <p>Description 2</p>

  <!--partialView:ThingPartial-->
  <h1>Name 3<h1>
  <p>Description 3</p>
</div>

動機 テスターがコメントを使用して、開発者や私が余計なことをしなくても、より正確なバグ レポートを作成できるようにしたい!

私が考えているのは、global.asax.cs で構成可能なものです。

  ViewEngines.Engines.Clear();
  RazorViewEngine viewEngineToAdd = new RazorViewEngine();
  //I COMPLETELY MADE THIS LINE UP, THESE THINGS DON'T EXIST (but I want them to!
  viewEngineToAdd.PreRender += (OutputStream,IView) => OutputStream.Write(@"<!--"+IView.Name+"-->")
  ViewEngines.Engines.Add(viewEngineToAdd);
4

1 に答える 1

1

これを試して:

<div class="somecontainer">
    @foreach(var thing in Model.Things) {
        Html.Raw("<!--" + thing + "-->");
        Html.Partial("ThingPartial",thing)
    }
</div>
于 2013-11-05T17:42:59.383 に答える