C# 如何让Razor解析symbol@Model?

C# 如何让Razor解析symbol@Model?,c#,razor,C#,Razor,我有一个Razor.cshtml模板,包含以下内容: 如您所见,@Model无法解析 但是,当我使用以下代码解析模板时: public static string RenderPartialViewToString(string templatePath, string viewName, List<ZonesVM> zonesVm) { string text = File.ReadAllText(Path.Combine(templatePath, viewName))

我有一个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;
}
publicstaticstringrenderpartialviewtostring(stringtemplatepath、stringviewname、List zonesVm)
{
string text=File.ReadAllText(Path.Combine(templatePath,viewName));
string renderedText=Razor.Parse(text,zonesVm);
返回渲染文本;
}
它工作正常,我在HTML中看到了预期的结果

有没有办法让Razor在编译之前知道@Model是什么

作为参考,我使用的不是普通的MVC Razor工具。

在.cshtml顶部包括
@model My.Super.ModelObject

编辑我现在看到问题了。。。进一步看

编辑2下面类似的内容适用于MVC Razor(从未使用过RazorEngine…因此可能无法100%翻译)

@foreach(Model.list中的变量项)
{        
@项目.价值
}

它也适用于智能感知。(这里是MVC4VS2010)

您已经在代码块中了。您不需要@before模型。@用于从html转换为代码块。

你不需要在那里使用
@
,我想我应该把它作为一个答案而不是一个评论发布,毕竟这是真正的答案,不知道为什么其他答案被接受。
@foreach (var item in Model.list)
{        
    <h1>@item.Value</h1>
}