From 6756fdd9ad74eb085de14e4af611af36320d89da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Fri, 26 Aug 2022 11:24:15 +0300 Subject: [PATCH] Added extension method: CreateByResourceName --- .../AbpStringLocalizerFactoryExtensions.cs | 17 ++++++++++++++++- .../AbpStringLocalizerFactory_Tests.cs | 9 +++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Localization.Abstractions/Microsoft/Extensions/Localization/AbpStringLocalizerFactoryExtensions.cs b/framework/src/Volo.Abp.Localization.Abstractions/Microsoft/Extensions/Localization/AbpStringLocalizerFactoryExtensions.cs index 87c7a2a2be..534a7e0eb9 100644 --- a/framework/src/Volo.Abp.Localization.Abstractions/Microsoft/Extensions/Localization/AbpStringLocalizerFactoryExtensions.cs +++ b/framework/src/Volo.Abp.Localization.Abstractions/Microsoft/Extensions/Localization/AbpStringLocalizerFactoryExtensions.cs @@ -1,4 +1,6 @@ -namespace Microsoft.Extensions.Localization; +using Volo.Abp; + +namespace Microsoft.Extensions.Localization; public static class AbpStringLocalizerFactoryExtensions { @@ -15,4 +17,17 @@ public static class AbpStringLocalizerFactoryExtensions return (localizerFactory as IAbpStringLocalizerFactory) ?.CreateByResourceNameOrNull(resourceName); } + + public static IStringLocalizer CreateByResourceName( + this IStringLocalizerFactory localizerFactory, + string resourceName) + { + var localizer = localizerFactory.CreateByResourceNameOrNull(resourceName); + if (localizer == null) + { + throw new AbpException("Couldn't find a localizer with given resource name: " + resourceName); + } + + return localizer; + } } diff --git a/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/AbpStringLocalizerFactory_Tests.cs b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/AbpStringLocalizerFactory_Tests.cs index 47db1bbd26..d5e41a624a 100644 --- a/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/AbpStringLocalizerFactory_Tests.cs +++ b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/AbpStringLocalizerFactory_Tests.cs @@ -31,4 +31,13 @@ public class AbpStringLocalizerFactory_Tests : AbpIntegratedTest( + () => _factory.CreateByResourceName("UnknownResourceName") + ); + } } \ No newline at end of file