Đây là một câu hỏi cú pháp. Tôi có một lớp chung đang kế thừa từ một lớp cơ sở chung và đang áp dụng một ràng buộc cho một trong các tham số kiểu. Tôi cũng muốn lớp dẫn xuất triển khai một giao diện. Đối với cuộc đời của tôi, tôi dường như không thể tìm ra cú pháp chính xác.
Đây là những gì tôi có:
DerivedFoo<T1,T2> : ParentFoo<T1, T2> where T2 : IBar { ... }
Điều đầu tiên nghĩ đến là:
DerivedFoo<T1,T2> : ParentFoo<T1, T2> where T2 : IBar, IFoo { ... }
Nhưng điều đó không chính xác vì điều đó khiến T2 cần triển khai cả IBar và IFoo, không phải DerivedFoo để triển khai IFoo.
Tôi đã thử một chút Google Googling, sử dụng dấu hai chấm, dấu chấm phẩy, v.v. nhưng tôi không thành công. Tôi chắc rằng câu trả lời rất đơn giản.