Browse Source

Localize exception message on LimitedResultRequestDto

resolves https://github.com/abpframework/abp/issues/2468
pull/2473/head
Yunus Emre Kalkan 6 years ago
parent
commit
f703db96e5
  1. 7
      framework/src/Volo.Abp.Ddd.Application.Contracts/Volo.Abp.Ddd.Application.Contracts.csproj
  2. 8
      framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Dtos/LimitedResultRequestDto.cs
  3. 9
      framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/AbpValidationResource.cs
  4. 6
      framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/en.json
  5. 6
      framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/tr.json

7
framework/src/Volo.Abp.Ddd.Application.Contracts/Volo.Abp.Ddd.Application.Contracts.csproj

@ -13,8 +13,15 @@
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<EmbeddedResource Include="Volo\Abp\Application\Localization\**\*.json" />
<Content Remove="Volo\Abp\Application\Localization\**\*.json" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.Auditing\Volo.Abp.Auditing.csproj" />
<ProjectReference Include="..\Volo.Abp.Localization\Volo.Abp.Localization.csproj" />
</ItemGroup>
</Project>

8
framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Dtos/LimitedResultRequestDto.cs

@ -1,6 +1,8 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Microsoft.Extensions.Localization;
using Volo.Abp.Application.Localization;
namespace Volo.Abp.Application.Dtos
{
@ -30,9 +32,13 @@ namespace Volo.Abp.Application.Dtos
public virtual IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
var l = validationContext.GetService(typeof(IStringLocalizer<AbpValidationResource>)) as IStringLocalizer<AbpValidationResource>;
if (MaxResultCount > MaxMaxResultCount)
{
yield return new ValidationResult($"{nameof(MaxResultCount)} can not be more than {MaxMaxResultCount}! Increase {typeof(LimitedResultRequestDto).FullName}.{nameof(MaxMaxResultCount)} on the server side to allow more results.", new []{nameof(MaxResultCount)});
yield return new ValidationResult(
errorMessage:l?["MaxResultCountExceededExceptionMessage", nameof(MaxResultCount), MaxMaxResultCount, typeof(LimitedResultRequestDto).FullName, nameof(MaxMaxResultCount)],
new []{nameof(MaxResultCount)});
}
}
}

9
framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/AbpValidationResource.cs

@ -0,0 +1,9 @@
using Volo.Abp.Localization;
namespace Volo.Abp.Application.Localization
{
[LocalizationResourceName("AbpValidation")]
public class AbpValidationResource
{
}
}

6
framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/en.json

@ -0,0 +1,6 @@
{
"culture": "en",
"texts": {
"MaxResultCountExceededExceptionMessage": "{0} can not be more than {1}! Increase {2}.{3} on the server side to allow more results."
}
}

6
framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/tr.json

@ -0,0 +1,6 @@
{
"culture": "tr",
"texts": {
"MaxResultCountExceededExceptionMessage": "{0} en fazla {1} olabilir, daha büyük olamaz! Daha fazla sonuca izin vermek için {2}.{3}'ü sunucu tarafında artırın."
}
}
Loading…
Cancel
Save