3

Wie kann ich Fehlermeldungen global überlasten, z. B. vom Attribut [Erforderlich]? Wahrscheinlich sollte ich CultureInfo ändern, aber ich kann keine Tutorials finden. Sprache immer noch Englisch als Standard. Vielen Dank!ASP.NET Core ValidationAttribute Nachrichtensprache

+0

Was ich weiß ist, Sie könnten '[Required (ErrorMes sage = @ "Dies ist erforderlich")] aber das wird nur in einer Sprache sein. –

+0

'ErrorMessage' funktioniert gut und alle Sprachen anzeigen, aber das ist hässlich, den gleichen Text die ganze Zeit zu schreiben. – loqie

Antwort

0

Sie können versuchen, ErrorMessageResourceName und ErrorMessageResourceType verwenden Ressourcendateien zum Speichern von Nachrichten verwenden.

1

Eine erste Referenz zur Globalisierung und Lokalisierung von ASP.NET Core ist https://docs.asp.net/en/latest/fundamentals/localization.html.

Dort finden Sie Informationen zum Konvertieren von Datenanmerkungen und zum Konfigurieren von ASP.NET Core zum Auswählen der entsprechenden Sprache/CultureInfo für jede Anforderung.

DataAnnotations-Fehlermeldungen werden mit IStringLocalizer<T> lokalisiert. Mit der Option resource = "Ressourcen", die Fehlermeldungen in RegisterViewModel kann in einem der folgenden Pfade gespeichert werden:

Resources/ViewModels.Account.RegisterViewModel.fr.resx Resources/Viewmodels/Account/RegisterViewModel. fr.resx

für eingebaute Fehlermeldungen für Identitätsmodelle (wie „Diese E-Mail bereits genommen wird.) oder grundlegende Validierungs Texte, die Sie etwas mehr Konfiguration zu tun haben. ich habe einige Arbeit in ASP.Net Core localization dokumentiert.

+0

Vielen Dank für die Antwort und Link, hoffe asp.net Kernteam wird es in Zukunft einfacher zu machen, genau wie in asp.net mvc. – loqie