Enum localisation

Comment avez-vous localiser les énumérations pour un ListBoxFor lorsque plusieurs options sont possibles?

Par exemple un enum qui contient des rôles:

public enum RoleType
{
    [Display(Description = "Administrator", ResourceType = typeof(Resource))]
    Administrator = 1,
    [Display(Description = "Moderator", ResourceType = typeof(Resource))]
    Moderator = 2,
    [Display(Description = "Webmaster", ResourceType = typeof(Resource))]
    Webmaster = 3,
    [Display(Description = "Guest", ResourceType = typeof(Resource))]
    Guest = 4,
    Etc.... = 5,
}

J'ai vu ce fait avec dropdownlist/selectlists. Mais est-il un moyen de faire cela pour un multi liste de sélection?

[MODIFIER]

C'est comment j'aimerais l'utiliser, ce qui est la façon dont il fonctionne maintenant, mais ne sont pas traduits dans une autre langue:

var roles = from role r in Enum.GetValues(typeof(RoleType))
            select new
            {
               Id = (int)Enum.Parse(typeof(RoleType), r.ToString()),
               Name = r.ToString()
            };

searchModel.roles = new MultiSelectList(roles, "Id", "Name");

Note: j'ai renommé l'enum de Rôle à RoleType.

InformationsquelleAutor Quoter | 2013-06-29