Tôi đang triển khai giao diện để chèn logic nghiệp vụ tùy chỉnh vào một khung công tác sử dụng Microsoft Unity. Vấn đề cốt lõi của tôi là giao diện tôi cần triển khai xác định phương thức sau:Thực hiện giao diện với kiểu generic ít bị ràng buộc hơn so với phương thức tôi cần gọi
T InterfaceMethod<T>();
T
không có ràng buộc. Trong mã của tôi, tôi cần phải gọi một phương thức từ một thư viện của bên thứ 3 khác nhau, với một chữ ký phương pháp
T AnotherMethod<T>() where T: class;
Các loại T là đáng kể đối với logic của AnotherMethod
. Có cách nào để gọi AnotherMethod<T>()
trong quá trình triển khai của tôi mà không sử dụng phản ánh không? Tôi rõ ràng cần thực hiện hành động thay thế nếu T
là loại giá trị. Có lẽ một cách để autobox để làm việc xung quanh này?
gì AnotherMethod() làm với T? Nếu bạn muốn hộp nó, chỉ cần đúc nó cho một đối tượng trước ..? –
Không chắc chắn sẽ giúp tôi, vì tôi nhận được một lỗi biên dịch liên quan đến T cần phải là một kiểu tham chiếu. – techphoria414