3

次の Razor .cshtml テンプレートがあります。

ここに画像の説明を入力

ご覧のとおり、@Model解決できません。

ただし、次のコードでテンプレートを解析すると:

public static string RenderPartialViewToString(string templatePath, string viewName, List<ZonesVM> zonesVm)
{
    string text = File.ReadAllText(Path.Combine(templatePath, viewName));

    string renderedText = Razor.Parse(text, zonesVm);
    return renderedText;
}

正しく動作し、期待する結果が HTML に表示されます。

コンパイルする前に Razor に @Model を知らせる方法はありますか?

参考までに、私は通常の MVC Razor のものではなく、RazorEngineを使用しています。

4

2 に答える 2

0

@model My.Super.ModelObject.cshtml の先頭に含める

編集私は今問題を見ています...さらに探しています

edit 2以下のようなものは MVC Razor で動作します (RazorEngine を使用したことがないため、100% 変換されない可能性があります)

@foreach (var item in Model.list)
{        
    <h1>@item.Value</h1>
}

インテリセンスでも動作します。(これは MVC 4 VS2010 です)

于 2013-06-27T17:00:32.473 に答える