Heim >Backend-Entwicklung >C++ >Wie kann ich das DisplayName-Attribut in .NET-Anwendungen lokalisieren?

Wie kann ich das DisplayName-Attribut in .NET-Anwendungen lokalisieren?

Linda Hamilton
Linda HamiltonOriginal
2025-01-04 09:23:35280Durchsuche

How Can I Localize the DisplayName Attribute in .NET Applications?

DisplayName-Attribut mit Ressourcen lokalisieren

In lokalisierten Anwendungen ist es wünschenswert, das DisplayName-Attribut einer Modelleigenschaft basierend auf einer Ressource dynamisch festzulegen Wert. Das herkömmliche DisplayName-Attribut im System.ComponentModel-Namespace unterstützt jedoch keine Lokalisierung.

Problemumgehung mit Display-Attribut in MVC 3 und .NET 4

In MVC 3 mit .NET 4 bietet das Display-Attribut aus dem System.ComponentModel.DataAnnotations-Namespace eine Lösung für die Lokalisierung. Es ersetzt das DisplayName-Attribut und enthält:

[Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))]

Hier ist „labelForName“ der Schlüssel in der Ressourcendatei und „Resources.Resources“ der vollständig qualifizierte Name der Ressourcenklasse.

EmberCD Windsor Helper (Optional)

Für ASP.NET Core- und EF Core-Projekte ist der EmberCD Windsor Helper bietet eine ähnliche Lösung:

[Required]
[DisplayNameResource(typeof(Resources.Resources), "labelForName")]
public string name{ get; set; }

Zusätzliche Überlegungen

  • Stellen Sie sicher, dass Ihre Ressourcendatei als „Eingebettete Ressource“ festgelegt ist und den „ResXFileCodeGenerator“ verwendet ' Benutzerdefiniertes Tool.
  • Vermeiden Sie die Verwendung von App_GlobalResources oder App_LocalResources mit MVC aufgrund von Kompatibilitätsproblemen. Weitere Informationen finden Sie in der verlinkten Dokumentation.

Das obige ist der detaillierte Inhalt vonWie kann ich das DisplayName-Attribut in .NET-Anwendungen lokalisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn