🌍 C# Study/C# 케이스 스터디
C# string to enum (string 값 enum으로 변환하기) System.Enum.Parse
맨텀
2021. 9. 21. 22:37
Enum.Parse
csv 데이터 등으로 기획 데이터를 사용할때
string 값을 사용하여 enum값으로 변환해야하는 경우가 종종 생긴다.
아래의 코드로 string 값을 특정 enum으로 변환이 가능함.
(MyEnum)System.Enum.Parse(typeof(MyEnum), mystring)
MSDN : Enum.Parse 메서드
https://docs.microsoft.com/ko-kr/dotnet/api/system.enum.parse?view=net-5.0
구현으로 가보면 영문자의 대소문자를 무시하는 것도 가능하다!
난 이 구현을 모르고 확장 메서드로 매번 첫번째 글자만 UpperCase로 변환한 다음에 넘겨줬었다..
public static object Parse(Type enumType, string value);
public static object Parse(Type enumType, string value, bool ignoreCase);
EnumTryParse
변환 실패처리를 위한 TryParse버전도 마련되어있다.
변환 성공여부를 bool로 리턴하니 if문과 같이 사용하면 된다.
MSDN : Enum.TryParse 메서드
https://docs.microsoft.com/ko-kr/dotnet/api/system.enum.tryparse?view=net-5.0