Esto funciona porque devuelve el resultado de la representación de vista parcial en una cadena:
@Html.Partial("Path/to/my/partial/view")
Pero prefiero usar RenderPartial
y parece que necesito escribir:
@{Html.RenderPartial("Path/to/my/partial/view");}
en vez de:
@Html.RenderPartial("Path/to/my/partial/view");
Para que funcione. Mensaje de error:
Compiler Error Message: CS1502: The best overloaded method match for 'System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)' has some invalid arguments
¿Hay alguna forma mejor en lugar de abrir el bloque de código @{...}
solo para una llamada de método?
asp.net-mvc
asp.net-mvc-3
razor
artvolk
fuente
fuente
@Html.RenderPartial()
RenderPartial
?Respuestas:
RenderPartial()
es un método vacío que escribe en el flujo de respuesta. Un método void, en C #, necesita un;
y, por lo tanto, debe incluirse entre{ }
.Partial()
es un método que devuelve un MvcHtmlString . En Razor, puede llamar a una propiedad o un método que devuelve dicha cadena con solo un@
prefijo para distinguirla del HTML simple que tiene en la página.fuente
Html.RenderPartial () es un método vacío; puede verificar si un método es un método vacío colocando el mouse sobre la llamada a RenderPartial en su código y verá el texto (extensión) void HtmlHelper.RenderPartial ...
Los métodos vacíos requieren un punto y coma al final del código de llamada.
En el motor de visualización de formularios web, habría encerrado su llamada Html.RenderPartial () dentro de las picaduras de abeja <%%>
al igual que
cuando utiliza el motor de vista de Razor, el equivalente es
fuente
fuente
Html.RenderPartial()
, por eso hice esta pregunta. Los detalles: "En cuanto al rendimiento, se ha afirmado que el renderizado directamente en el flujo de salida es mejor (por eso, para empezar, eligieron el RenderPartial vacío)". desde aquí stackoverflow.com/a/2729851/118810Si se le da este formato, es como un enlace a otra página u otro enlace. Vista parcial que se utiliza principalmente para reproducir los archivos html de un lugar a otro.
fuente