Localización enum
¿Cómo localizar enumeraciones para unListBoxFor
¿Dónde son posibles las múltiples opciones?
Por ejemplo unenum
que contiene roles:
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,
}
He visto esto hecho condropdownlist
/selectlists
. ¿Pero hay una manera de hacer esto para una lista de selección múltiple?
[EDITAR]
Así es como me gustaría usarlo, que es como funciona ahora pero no se traduce en un idioma diferente:
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");
Nota: he cambiado el nombre de la enumeración de Role a RoleType.