일반 캐스팅에서 "'T' 유형의 값을 변환할 수 없습니다" 오류 해결
"' 유형의 값' 형식의 오류 메시지 T'는 다음으로 변환될 수 없습니다."는 제네릭 유형 매개변수를 제네릭 내의 특정 유형으로 캐스팅하려고 할 때 발생할 수 있습니다.
다음 방법을 고려하십시오.
T HowToCast<T>(T t) { if (typeof(T) == typeof(string)) { T newT1 = "some text"; T newT2 = (string)t; } return t; }
이 코드는 일반 매개변수 T가 문자열 유형인 경우 입력 변수 t를 문자열로 캐스팅하려고 시도합니다. 그러나 컴파일러는 다음 제한 사항으로 인해 오류를 발생시킵니다.
이 문제를 해결하려면 캐스팅에서 다음 두 단계를 사용해야 합니다. 접근 방식:
수정된 코드는 다음과 같습니다.
T newT1 = (T)(object)"some text"; string newT2 = (string)(object)t;
위 내용은 일반 C# 메서드에서 ''T' 유형의 값을 변환할 수 없습니다' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!