TryParse를 사용한 일반 문자열 변환
특정 유형에 대해 문자열을 검증하기 위해 'TryParse'를 활용하는 일반 확장을 생성하려는 시도에서 다음 코드가 발견되었습니다.
public static bool Is<T>(this string input) { T notUsed; return T.TryParse(input, out notUsed); }
이 코드는 다음 문제로 인해 컴파일에 실패합니다. 'TryParse' 기호를 확인할 수 없습니다. 'TryParse'는 인터페이스의 일부가 아니므로 이 기능을 사용할 수 있는지 여부에 대한 질문을 제기합니다.
TypeDescriptor를 사용하는 대체 솔루션
한 가지 접근 방식은 TypeDescriptor 클래스를 사용하는 것입니다. :
public static bool Is(this string input, Type targetType) { try { TypeDescriptor.GetConverter(targetType).ConvertFromString(input); return true; } catch { return false; } }
이 메소드는 대상 유형을 명시적으로 전달하여 제네릭을 사용하고 런타임 유형 변환을 허용합니다. TypeDescriptor는 문자열을 다양한 유형으로 변환하는 기능을 제공하므로 원하는 유형에 대해 문자열의 유효성을 검사할 수 있습니다.
위 내용은 TryParse를 사용하여 일반 문자열 유효성 검사를 수행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!