private static ReturnDto<int> MethodName(int val) private static ReturnDto<string> MethodName(string val) private static ReturnDto<bool> MethodName(bool val) private static ReturnDto<DateTime> MethodName(DateTime val) { //do some stuff here... return new ReturnDto<DateTime> { Val = val, Val2 = val2, Val3 = val3 }; }
private static ReturnDto<T> MethodName<T>(T val)
T ( generic type parameter 任何 this 了解更多信息。
T
var returnDto = MethodName(1); //instead of MethodName<int>(1)
T 通过类型 val 这就是 int ; 编译器有足够的信息来确定 T
val
int