This works, because it returns the result of partial view rendering in a string:
@Html.Partial("Path/to/my/partial/view")
But I prefer to use RenderPartial
and it seems I need to write:
@{Html.RenderPartial("Path/to/my/partial/view");}
instead of:
@Html.RenderPartial("Path/to/my/partial/view");
To get it to work. Error message:
Compiler Error Message: CS1502: The best overloaded method match for 'System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)' has some invalid arguments
If there any better way instead of opening code block @{...}
just for one method call?
Html.RenderPartial() is a void method - you can check whether a method is a void method by placing your mouse over the call to RenderPartial in your code and you will see the text (extension) void HtmlHelper.RenderPartial...
Void methods require a semicolon at the end of the calling code.
In the Webforms view engine you would have encased your Html.RenderPartial() call within the bee stings <% %>
like so
<% Html.RenderPartial("Path/to/my/partial/view"); %>
when you are using the Razor view engine the equivalent is
@{Html.RenderPartial("Path/to/my/partial/view");}
@Html.Partial("NameOfPartialView")
If you are given this format it takes like a link to another page or another link.partial view majorly used for renduring the html files from one place to another.