데이터 형식의 개체 유형 필드 (데이터 집합에서 가져온 데이터)를 대상 (입력 된) 필드로 변환하는 코드를 작성하려고합니다. 나는 (최소한 노력) 동적 변환을 사용하고있다. 그것은 문자열, 정수, DateTime 잘 작동하는 것으로 보인다.C# : Generic을 사용하여 부호없는 숫자 형식으로 개체 전송
그러나 부호없는 유형 (ulong, uint)에서는 작동하지 않습니다. 아래에는 내가하고 싶은 것을 보여주는 간단한 코드가 있습니다. ul var 유형을 ulong에서 int로 변경하면 올바르게 작동합니다.
아무도 단서가 있습니까?
public class console
{
public static void CastIt<T>(object value, out T target)
{
target = (T) value;
}
public static void Main()
{
ulong ul;
string str;
int i;
DateTime dt;
object ul_o = (object) 2;
object str_o = (object) "This is a string";
object i_o = (object)1;
object dt_o = (object) DateTime.Now;
Console.WriteLine("Cast");
CastIt(ul_o, out ul);
CastIt(str_o, out str);
CastIt(i_o, out i);
CastIt(dt_o, out dt);
Console.WriteLine(ul);
Console.WriteLine(str);
Console.WriteLine(i);
Console.WriteLine(dt.ToString());
}
}
Convert.ChangeType +1 - 어떻게 든 그 중 하나를 발견하지 못했습니다 – galaktor