C# · Programowanie

Enum.ToString() z parametrami

Ostatnio natknęłam się na pewien problem. Miałam jakiś enum, przykładowo:

public enum BoardGameType
{
	Strategic,
	Economic
}

Potrzebowałam zwrócić wartość liczbową enuma jako string (czyli liczbę 0 zapisaną w stringu „0”). Co mogłam zrobić? Ano mogłam napisać najprościej, jak się da:

BoardGameType.Strategic.ToString();

Jednak tutaj powinna mi się zapalić czerwona lampka. Przecież metoda .ToString() dla danej wartości enuma zwraca jego wartość tekstową, a nie liczbową. Gdybym więc wywołała powyższy kod, to w rezultacie otrzymałabym napis „Strategic”. A to, co chciałam uzyskać, to napis „0”.

Dlatego warto zerknąć do dokumentacji i sprawdzić, jak jest przeciążona metoda Enum.ToString(). Można przekazać do niej parametr format, na podstawie którego można określić, jaki ma być output. Domyślnym parametrem jest „f”, który zwraca wartość tekstową.
Rozwiązaniem mojego problemu było więc wywołanie metody .ToString() z parametrem „D”:

BoardGameType.Strategic.ToString("D");

3 myśli na temat “Enum.ToString() z parametrami

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Connecting to %s