DisplayName-Attributwerte mit Ressourcen lokalisieren
In lokalisierten .NET-Anwendungen kann es wünschenswert sein, das DisplayName-Attribut von Modelleigenschaften mithilfe von lokalisierten festzulegen Ressourcen. Versuche, Ressourcen direkt innerhalb des DisplayName-Attributs zu verwenden, wie im folgenden Code gezeigt, führen jedoch zu Kompilierungsfehlern:
public class MyModel { [Required] [DisplayName(Resources.Resources.labelForName)] public string name{ get; set; } }
Um diese Einschränkung zu beheben, haben MVC 3 und .NET 4 das Display-Attribut in eingeführt System.ComponentModel.DataAnnotations-Namespace. Dieses Attribut bietet erweiterte Funktionalität, einschließlich Lokalisierungsunterstützung. So verwenden Sie es für lokalisierte DisplayName-Werte:
public class MyModel { [Required] [Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))] public string name{ get; set; } }
Beachten Sie, dass für diesen Ansatz Ihre Ressourcendatei als „eingebettete Ressource“ festgelegt sein muss und Sie das benutzerdefinierte Tool „ResXFileCodeGenerator“ verwenden müssen. Vermeiden Sie die Verwendung von App_GlobalResources oder App_LocalResources mit MVC aufgrund von Einschränkungen bei deren benutzerdefinierten Tools.
Das obige ist der detaillierte Inhalt vonWie kann ich DisplayName-Attributwerte in .NET lokalisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!