本地化ASP.NET核心模型繫結錯誤訊息
阿新 • • 發佈:2018-12-09
1 services.AddMvc(options => 2 { 3 IStringLocalizerFactory F = services.BuildServiceProvider(). 4 GetService<IStringLocalizerFactory>(); 5 IStringLocalizer L = F.Create("ModelBindingMessages", 6 "AspNetCoreLocalizationSample"); 7 options.ModelBindingMessageProvider. 8 SetValueIsInvalidAccessor((x) => L["The value '{0}' is invalid."]); 9 options.ModelBindingMessageProvider.SetValueMustBeANumberAccessor( 10 (x) =>L["The field {0} must be a number."]); 11 options.ModelBindingMessageProvider.SetMissingBindRequiredValueAccessor( 12 (x) => L["A value for the '{0}' property was not provided.", x]); 13 options.ModelBindingMessageProvider.SetAttemptedValueIsInvalidAccessor( 14 (x, y) => L["The value '{0}' is not valid for {1}.", x, y]); 15 options.ModelBindingMessageProvider.SetMissingKeyOrValueAccessor( 16 () => L["A value is required."]); 17 options.ModelBindingMessageProvider.SetUnknownValueIsInvalidAccessor( 18 (x) => L["The supplied value is invalid for {0}.", x]); 19 options.ModelBindingMessageProvider.SetValueMustNotBeNullAccessor( 20 (x) => L["Null value is invalid.", x]); 21 }).AddDataAnnotationsLocalization() 22 .AddViewLocalization(); 23 services.Configure<RequestLocalizationOptions>(options => 24 { 25 var supportedCultures = new[]{new CultureInfo("en"), new CultureInfo("zh-cn")}; 26 options.DefaultRequestCulture = new RequestCulture("en", "en"); 27 options.SupportedCultures = supportedCultures; 28 options.SupportedUICultures = supportedCultures; 29 });