RenderAction差异

POI*_*OIR 7 c# asp.net asp.net-mvc renderaction razor

为什么这段代码是正确的:

 @{
   Html.RenderAction("PostImagesForPost", "BlogPost", new { id = Model.ID });
  }
Run Code Online (Sandbox Code Playgroud)

而这段代码

 @Html.RenderAction("PostImagesForPost", "BlogPost", new { id = Model.ID })
Run Code Online (Sandbox Code Playgroud)

通过此错误消息:

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

为什么使用'{''}'这么重要?

谢谢

hut*_*oid 4

Html.RenderAction必须在脚本块内调用,不能在标记中调用。

作为标记中的替代方案,您可以使用:

@Html.Action("PostImagesForPost", "BlogPost", new { id = Model.ID })
Run Code Online (Sandbox Code Playgroud)

有关 和 的差异请Action参见RenderAction此处:

http://haacked.com/archive/2009/11/18/aspnetmvc2-render-action.aspx/