Я создаю библиотеку классов с некоторыми обычно используемыми классами, такими как лица, адреса и т. Д. Эта библиотека будет использоваться в многоязычном приложении, и я ищу наиболее удобный способ представления пола людей.
В идеале я хотел бы иметь возможность кодировать так:
Person person = new Person { Gender = Genders.Male,
FirstName = "Nice",
LastName = "Dude" }
if (person.Gender == Genders.Male)
Console.WriteLine("person is Male");
Console.WriteLine(person.Gender); //Should output: Male
Console.WriteLine(person.Gender.ToString("da-DK"));
//Should output the name of the gender in the language provided
List<Gender> genders = Genders.GetAll();
foreach(Gender gender in genders)
{
Console.WriteLine(gender.ToString());
Console.WriteLine(gender.ToString("da-DK"));
}
Что бы вы сделали? Перечисление и специализированный гендерный класс? Но как насчет локализации?
Edit: Я хотел бы отметить, что этот вопрос, по крайней мере, так же о том, как кодировать некоторые классы, которые позволяют писать код, как указано выше, у меня нет класса Gender или перечисления пола, я пытаюсь выяснить, как написать код, который позволил бы вышеуказанный код. Как будет выглядеть класс Genders? Вы бы использовали перечисление для полов?
Привет
Джеспер Хауге