// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.Collections.Generic; using System.Globalization; using Microsoft.Extensions.Localization; namespace Microsoft.AspNetCore.Mvc.Localization { /// /// Represents a type that that does HTML-aware localization of strings, by HTML encoding arguments that are /// formatted in the resource string. /// public interface IHtmlLocalizer { /// /// Gets the string resource with the given name. /// /// The name of the string resource. /// The string resource as a . LocalizedHtmlString this[string name] { get; } /// /// Gets the string resource with the given name and formatted with the supplied arguments. The arguments will /// be HTML encoded. /// /// The name of the string resource. /// The values to format the string with. /// The formatted string resource as a . LocalizedHtmlString this[string name, params object[] arguments] { get; } /// /// Gets the string resource with the given name. /// /// The name of the string resource. /// The string resource as a . LocalizedString GetString(string name); /// /// Gets the string resource with the given name and formatted with the supplied arguments. /// /// The name of the string resource. /// The values to format the string with. /// The formatted string resource as a . LocalizedString GetString(string name, params object[] arguments); /// /// Gets all string resources. /// /// /// A indicating whether to include strings from parent cultures. /// /// The strings. IEnumerable GetAllStrings(bool includeParentCultures); /// /// Creates a new for a specific . /// /// The to use. /// A culture-specific . IHtmlLocalizer WithCulture(CultureInfo culture); } }