Tôi đang cố gắng để viết một phương pháp như thế này:Tôi biết typeof (T) nhưng trình biên dịch thì không. Làm thế nào để khắc phục?
public static T Test<T>()
{
if (typeof(T)==typeof(string))
return "1241";
// do something else
}
nhưng tôi dường như không thể tìm ra cách để kéo nó ra khỏi. Tôi muốn trả về các giá trị tùy thuộc vào loại T mà phương thức được gọi với. Tôi cần phải trả về chuỗi, int, các lớp tùy chỉnh, Danh sách, vv ..
Cách sử dụng thực tế là một số mã tuần tự tùy chỉnh, trong đó mã deserializing biết loại đối tượng cần tạo.
Làm rõ: ví dụ trên cho các lỗi sau: Không thể chuyển đổi chuỗi để gõ T
Các giải pháp lý tưởng sẽ làm việc trên các loại giá trị và các loại tài liệu tham khảo, và sẽ không bao gồm một tham số giả để giải quyết tình trạng quá tải.
Tôi bắt đầu nghi ngờ liệu giải pháp lý tưởng đó có tồn tại hay không.
Xin cảm ơn, Lucas
typeof (T) nên để làm việc. Trình biên dịch phát hành thông báo lỗi nào? –