我试图理解为什么在我看来这样做时会出现错误

@Html.RenderPartial("MyPartial", Model);

编译错误
说明:编译服务该请求所需的资源期间发生错误。请查看以下特定的错误详细信息,并适本地修改您的源代码。


编译器错误消息:CS1502:最佳重载方法匹配'System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)'有一些无效的参数

但是当我这样做时,局部渲染很好
@{
   Html.RenderPartial("MyPartial", Model);
}

有谁知道为什么第一个例子失败了?

最佳答案

基本上是这样的事实...

@Html.RenderPartial("MyPartial", Model)

...用于不返回void的函数,因为RenderPartial确实返回void,您会收到该错误。

相反,在此块中,只是代码执行(将在内部进行写调用):
    @{
Html.RenderPartial("MyPartial", Model);
}

您可以选择致电
@Html.Partial("MyPartial")

...确实会返回字符串。

09-20 11:01