using AutoMapper; namespace Umbraco.Web.Models.Mapping { /// /// Provides extension methods for AutoMapper's . /// internal static class MappingOperationOptionsExtensions { private const string CultureKey = "MappingOperationOptions.Culture"; private const string IncludedPropertiesKey = "MappingOperationOptions.IncludeProperties"; /// /// Gets the context culture. /// public static string GetCulture(this IMappingOperationOptions options) { return options.Items.TryGetValue(CultureKey, out var obj) && obj is string s ? s : null; } /// /// Sets a context culture. /// public static void SetCulture(this IMappingOperationOptions options, string culture) { options.Items[CultureKey] = culture; } /// /// Get included properties. /// public static string[] GetIncludedProperties(this IMappingOperationOptions options) { return options.Items.TryGetValue(IncludedPropertiesKey, out var obj) && obj is string[] s ? s : null; } /// /// Sets included properties. /// public static void SetIncludedProperties(this IMappingOperationOptions options, string[] properties) { options.Items[IncludedPropertiesKey] = properties; } } }