Isso funciona porque retorna o resultado da renderização parcial da visualização em uma string:
@Html.Partial("Path/to/my/partial/view")
Mas prefiro usar RenderPartial
e parece que preciso escrever:
@{Html.RenderPartial("Path/to/my/partial/view");}
ao invés de:
@Html.RenderPartial("Path/to/my/partial/view");
Para fazer funcionar. Mensagem de erro:
Compiler Error Message: CS1502: The best overloaded method match for 'System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)' has some invalid arguments
Existe alguma maneira melhor em vez de abrir o bloco de código @{...}
apenas para uma chamada de método?
asp.net-mvc
asp.net-mvc-3
razor
Artvolk
fonte
fonte
@Html.RenderPartial()
RenderPartial
?Respostas:
RenderPartial()
é um método vazio que grava no fluxo de resposta. Um método void, em C #, precisa de um;
e, portanto, deve ser incluído por{ }
.Partial()
é um método que retorna um MvcHtmlString . No Razor, você pode chamar uma propriedade ou método que retorna tal string com apenas um@
prefixo para distingui-lo do HTML puro que você tem na página.fonte
Html.RenderPartial () é um método void - você pode verificar se um método é um método void colocando o mouse sobre a chamada para RenderPartial em seu código e você verá o texto (extensão) void HtmlHelper.RenderPartial ...
Os métodos nulos requerem um ponto e vírgula no final do código de chamada.
No mecanismo de visualização do Webforms, você teria encerrado sua chamada Html.RenderPartial () dentro das picadas de abelha <%%>
igual a
quando você está usando o motor de visualização Razor o equivalente é
fonte
fonte
Html.RenderPartial()
, é por isso que fiz esta pergunta. Os detalhes: "Em termos de desempenho, foi afirmado que renderizar diretamente para o fluxo de saída é melhor (por isso eles usaram o vazio RenderPartial para começar)." from here stackoverflow.com/a/2729851/118810Se você receber esse formato, ele será como um link para outra página ou outro link. Visualização parcial usada principalmente para renderizar os arquivos html de um lugar para outro.
fonte