Перечисление локализации

Как вы локализуете перечисления дляListBoxFor где несколько вариантов возможны?

Например,enum который содержит роли:

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,
}

Я видел это сделано сdropdownlist/selectlists, Но есть ли способ сделать это для списка с множественным выбором?

[РЕДАКТИРОВАТЬ]

Вот как я хотел бы использовать это, вот как это работает сейчас, но не переводится на другой язык:

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");

Примечание: я переименовал enum из Role в RoleType.

Ответы на вопрос(12)

Ваш ответ на вопрос