Added extension method: CreateByResourceName

pull/13845/head
Halil İbrahim Kalkan 3 years ago
parent 614512d1f1
commit 6756fdd9ad

@ -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;
}
}

@ -31,4 +31,13 @@ public class AbpStringLocalizerFactory_Tests : AbpIntegratedTest<AbpLocalization
localizer["CarPlural"].Value.ShouldBe("Cars");
}
}
[Fact]
public void Should_Throw_Exception_For_Unknown_Resource_Names()
{
Assert.Throws<AbpException>(
() => _factory.CreateByResourceName("UnknownResourceName")
);
}
}
Loading…
Cancel
Save