Maison >développement back-end >C++ >Comment puis-je localiser les valeurs d'attribut DisplayName dans .NET ?

Comment puis-je localiser les valeurs d'attribut DisplayName dans .NET ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-02 19:52:39426parcourir

How Can I Localize DisplayName Attribute Values in .NET?

Localisation des valeurs d'attribut DisplayName avec des ressources

Dans les applications .NET localisées, il peut être souhaitable de définir l'attribut DisplayName des propriétés du modèle à l'aide de la localisation ressources. Cependant, les tentatives d'utilisation directe des ressources dans l'attribut DisplayName, comme indiqué dans le code ci-dessous, entraînent des erreurs de compilation :

public class MyModel
{
  [Required]
  [DisplayName(Resources.Resources.labelForName)]
  public string name{ get; set; }
}

Pour résoudre cette limitation, MVC 3 et .NET 4 ont introduit l'attribut Display dans l'attribut DisplayName. Espace de noms System.ComponentModel.DataAnnotations. Cet attribut offre des fonctionnalités améliorées, notamment la prise en charge de la localisation. Voici comment l'utiliser pour les valeurs DisplayName localisées :

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

Notez que cette approche nécessite que votre fichier de ressources soit défini en tant que « ressource intégrée » et utilise l'outil personnalisé « ResXFileCodeGenerator ». Évitez d'utiliser App_GlobalResources ou App_LocalResources avec MVC en raison des limitations de leurs outils personnalisés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn