Add missing `RenderPartial(...)` overload

- #7127
- also remove some redundant `null` checks
This commit is contained in:
Doug Bunting 2018-01-05 11:27:54 -08:00
parent 40d027fca3
commit 1fa1d7df3e
2 changed files with 26 additions and 66 deletions

View File

@ -115,20 +115,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
/// This method synchronously calls and blocks on
/// <see cref="IHtmlHelper.PartialAsync(string, object, ViewDataDictionary)"/>
/// </remarks>
public static IHtmlContent Partial(
this IHtmlHelper htmlHelper,
string partialViewName)
public static IHtmlContent Partial(this IHtmlHelper htmlHelper, string partialViewName)
{
if (htmlHelper == null)
{
throw new ArgumentNullException(nameof(htmlHelper));
}
if (partialViewName == null)
{
throw new ArgumentNullException(nameof(partialViewName));
}
return Partial(htmlHelper, partialViewName, htmlHelper.ViewData.Model, viewData: null);
}
@ -152,16 +140,6 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
string partialViewName,
ViewDataDictionary viewData)
{
if (htmlHelper == null)
{
throw new ArgumentNullException(nameof(htmlHelper));
}
if (partialViewName == null)
{
throw new ArgumentNullException(nameof(partialViewName));
}
return Partial(htmlHelper, partialViewName, htmlHelper.ViewData.Model, viewData);
}
@ -180,21 +158,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
/// This method synchronously calls and blocks on
/// <see cref="IHtmlHelper.PartialAsync(string, object, ViewDataDictionary)"/>
/// </remarks>
public static IHtmlContent Partial(
this IHtmlHelper htmlHelper,
string partialViewName,
object model)
public static IHtmlContent Partial(this IHtmlHelper htmlHelper, string partialViewName, object model)
{
if (htmlHelper == null)
{
throw new ArgumentNullException(nameof(htmlHelper));
}
if (partialViewName == null)
{
throw new ArgumentNullException(nameof(partialViewName));
}
return Partial(htmlHelper, partialViewName, model, viewData: null);
}
@ -244,22 +209,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
/// <remarks>
/// In this context, "renders" means the method writes its output using <see cref="ViewContext.Writer"/>.
/// </remarks>
public static void RenderPartial(
this IHtmlHelper htmlHelper,
string partialViewName)
public static void RenderPartial(this IHtmlHelper htmlHelper, string partialViewName)
{
if (htmlHelper == null)
{
throw new ArgumentNullException(nameof(htmlHelper));
}
if (partialViewName == null)
{
throw new ArgumentNullException(nameof(partialViewName));
}
var result = htmlHelper.RenderPartialAsync(partialViewName, htmlHelper.ViewData.Model, viewData: null);
result.GetAwaiter().GetResult();
RenderPartial(htmlHelper, partialViewName, htmlHelper.ViewData.Model, viewData: null);
}
/// <summary>
@ -278,18 +230,7 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
string partialViewName,
ViewDataDictionary viewData)
{
if (htmlHelper == null)
{
throw new ArgumentNullException(nameof(htmlHelper));
}
if (partialViewName == null)
{
throw new ArgumentNullException(nameof(partialViewName));
}
var result = htmlHelper.RenderPartialAsync(partialViewName, htmlHelper.ViewData.Model, viewData);
result.GetAwaiter().GetResult();
RenderPartial(htmlHelper, partialViewName, htmlHelper.ViewData.Model, viewData);
}
/// <summary>
@ -303,10 +244,28 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
/// <remarks>
/// In this context, "renders" means the method writes its output using <see cref="ViewContext.Writer"/>.
/// </remarks>
public static void RenderPartial(this IHtmlHelper htmlHelper, string partialViewName, object model)
{
RenderPartial(htmlHelper, partialViewName, model, viewData: null);
}
/// <summary>
/// Renders HTML markup for the specified partial view.
/// </summary>
/// <param name="htmlHelper">The <see cref="IHtmlHelper"/> instance this method extends.</param>
/// <param name="partialViewName">
/// The name or path of the partial view used to create the HTML markup. Must not be <c>null</c>.
/// </param>
/// <param name="model">A model to pass into the partial view.</param>
/// <param name="viewData">A <see cref="ViewDataDictionary"/> to pass into the partial view.</param>
/// <remarks>
/// In this context, "renders" means the method writes its output using <see cref="ViewContext.Writer"/>.
/// </remarks>
public static void RenderPartial(
this IHtmlHelper htmlHelper,
string partialViewName,
object model)
object model,
ViewDataDictionary viewData)
{
if (htmlHelper == null)
{
@ -318,7 +277,7 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
throw new ArgumentNullException(nameof(partialViewName));
}
var result = htmlHelper.RenderPartialAsync(partialViewName, model, viewData: null);
var result = htmlHelper.RenderPartialAsync(partialViewName, model, viewData);
result.GetAwaiter().GetResult();
}

View File

@ -152,6 +152,7 @@ namespace Microsoft.AspNetCore.Mvc.Rendering
{ helper => helper.RenderPartial("test"), null, null },
{ helper => helper.RenderPartial("test", model), model, null },
{ helper => helper.RenderPartial("test", viewData), null, viewData },
{ helper => helper.RenderPartial("test", model, viewData), model, viewData },
};
}
}