Tôi đang sử dụng thư viện của bên thứ ba chứa một loạt các phương pháp tiện ích mở rộng trên đầu trang của IQueryable. Để sử dụng các phương thức mở rộng này, tôi không muốn ứng dụng của mình được rải rác bằng cách sử dụng câu lệnh cho không gian tên của bên thứ ba mà phương thức mở rộng nằm trong đó.Phương thức mở rộng - Thay đổi không gian tên
Điều này là để tôi có thể chuyển nó ra thư viện tương lai dễ dàng nhất có thể. Tuy nhiên tôi không chắc chắn cách tốt nhất để làm điều này là gì. Một tùy chọn mà tôi đã suy nghĩ là tạo ra một tập các phương thức mở rộng của riêng tôi trong dự án (sau đó tôi có thể kiểm soát không gian tên). Vấn đề với điều này là tôi không thể thấy làm thế nào tôi có thể duy trì tên của phương pháp mở rộng hiện có. Ví dụ:
namespace MyProject.Extensions {
public static class IQueryableExtension {
public static IQueryable<T> Fetch<T, K>(this IQueryable<T> queryable, Expression<Func<T, K>> selector) {
return queryable.Fetch(selector);
}
}
}
Bạn có thể thấy sự cố ở đây. Nơi tôi đang cố gắng gọi phương thức mở rộng của bên thứ ba bên trong tôi, nó thực sự gọi chính nó là tạo ra một vòng lặp vô hạn.
Tôi đánh giá cao sự trợ giúp. Cảm ơn
Xin cảm ơn câu trả lời của bạn. – nfplee