Heim > Backend-Entwicklung > C++ > Wie kann ich Anzeigenamen dynamisch aus Ressourcendateien in .NET abrufen?

Wie kann ich Anzeigenamen dynamisch aus Ressourcendateien in .NET abrufen?

DDD
Freigeben: 2025-01-01 14:28:10
Original
258 Leute haben es durchsucht

How Can I Dynamically Retrieve Display Names from Resource Files in .NET?

Anzeigenamen aus Ressourcen abrufen

In lokalisierten Anwendungen müssen Entwickler häufig benutzerfreundliche Beschriftungen für Modelleigenschaften anzeigen. Während das DisplayName-Attribut die Angabe statischer Anzeigenamen ermöglicht, kann es Szenarios geben, in denen diese Namen dynamisch aus externen Quellen wie Ressourcendateien abgerufen werden müssen.

Leider ist die alleinige Verwendung des DisplayName-Attributs nicht möglich die Möglichkeit, einen dynamischen Wert aus einer Ressource anzugeben. Der Compiler-Fehler „Ein Attributargument muss ein konstanter Ausdruck, ein Ausdruckstyp oder ein Array-Erstellungsausdruck eines Attributparametertyps sein“ weist darauf hin, dass das bereitgestellte Argument ein statischer Wert sein muss.

Problemumgehung mit .NET 4 und MVC 3

Für Anwendungen, die MVC 3 und .NET 4 verwenden, gibt es eine Lösung durch die Verwendung des aktualisierten Anzeigeattributs im System.ComponentModel.DataAnnotations-Namespace. Dieses Attribut erweitert die Funktionalität seines Vorgängers, einschließlich der Möglichkeit, die Lokalisierung zu nutzen.

Um dieses Attribut zu nutzen, ändern Sie Ihr Modell wie folgt:

public class MyModel
{
    [Required]
    [Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))]
    public string name { get; set; }
}
Nach dem Login kopieren

Hinweis: Diese Problemumgehung erfordert, dass die Ressourcendatei als „eingebettete Ressource“ markiert ist und das benutzerdefinierte Tool „ResXFileCodeGenerator“ verwendet. Darüber hinaus sollten App_GlobalResources oder App_LocalResources nicht mit MVC verwendet werden.

Das obige ist der detaillierte Inhalt vonWie kann ich Anzeigenamen dynamisch aus Ressourcendateien in .NET abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage