如何在 ASP.NET MVC 5 中的自定义 html-helper 中使用 Html.Partial()?

How to use Html.Partial() inside of custom html-helper in ASP.NET MVC 5?

我想创建一个与页面 html 分开的自定义助手,它会使用部分视图功能,但由于某些原因 Html.Partial("_partialName") 不起作用

App_Code 中分离的 cshtml 文件的内容:

@helper MyHelper(IEnumerable<string> something)
{
    <div>@Html.Partial("_viewName", something)</div>   
}

如何像在 Razor 视图页面中一样使用 Html.Partial

您不能只在辅助方法中调用 Html.Partial("_name", model);PartialHtmlHelper类型的扩展方法,Html是View的属性(继承自WebViewPage<TModel>)。您可以通过转到视图(或部分视图)并导航到 Html.

的定义来检查它

从助手调用它没有意义,因此它没有公开可访问 属性 Html 形式 WebViewPage<TModel> 类型的对象。实际上它是 CustomHtml class 的一个实例。尝试在视图和助手中都写 @this. 。您会看到它们有何不同。