Browse Source

Get a globalContext from the TemplateRenderer

pull/3792/head
Halil İbrahim Kalkan 6 years ago
parent
commit
7bd91c1d01
  1. 14
      framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/ITemplateRenderer.cs
  2. 5
      framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/TemplateRenderer.cs

14
framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/ITemplateRenderer.cs

@ -1,4 +1,5 @@
using System.Linq;
using System.Collections.Generic;
using System.Globalization;
using System.Threading.Tasks;
using JetBrains.Annotations;
@ -6,10 +7,19 @@ namespace Volo.Abp.TextTemplating
{
public interface ITemplateRenderer
{
/// <summary>
/// Renders a text template.
/// </summary>
/// <param name="templateName">The template name</param>
/// <param name="model">An optional model object that is used in the template</param>
/// <param name="cultureName">Culture name. Uses the <see cref="CultureInfo.CurrentUICulture"/> if not specified</param>
/// <param name="globalContext">A dictionary which can be used to import global objects to the template</param>
/// <returns></returns>
Task<string> RenderAsync(
[NotNull] string templateName,
[CanBeNull] object model = null,
[CanBeNull] string cultureName = null
[CanBeNull] string cultureName = null,
[CanBeNull] Dictionary<string, object> globalContext = null
);
}
}

5
framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/TemplateRenderer.cs

@ -30,7 +30,8 @@ namespace Volo.Abp.TextTemplating
public virtual async Task<string> RenderAsync(
[NotNull] string templateName,
[CanBeNull] object model = null,
[CanBeNull] string cultureName = null)
[CanBeNull] string cultureName = null,
[CanBeNull] Dictionary<string, object> globalContext = null)
{
Check.NotNullOrWhiteSpace(templateName, nameof(templateName));
@ -43,7 +44,7 @@ namespace Volo.Abp.TextTemplating
{
return await RenderInternalAsync(
templateName,
new Dictionary<string, object>(),
globalContext ?? new Dictionary<string, object>(),
model
);
}

Loading…
Cancel
Save