Httpcontextaccessor là gì
Cách tùy chỉnh ràng buộc cấu hình trong ASP.NET Core7 Jon 2020-07-07 07:35. Tôi có một ứng dụng web ASP.NET Core nhiều người thuê. Mô hình thuê nhà hiện tại là mỗi người thuê nhà có một ứng dụng web và cơ sở dữ liệu SQL riêng biệt. Tôi đang cố gắng kiến trúc lại nó để nhiều người thuê sẽ được phục vụ bởi một ứng dụng web duy nhất (nhưng duy trì một cơ sở dữ liệu riêng biệt cho mỗi người thuê). Tôi đã theo dõi loạt bài đăng trên blog này nhưng tôi đã gặp một chút trở ngại về cấu hình. Ứng dụng sử dụng nhiều hệ thống cấu hình ASP.NET Core và có nhà cung cấp EF Core tùy chỉnh tìm nạp các giá trị cấu hình từ cơ sở dữ liệu. Tôi muốn giữ lại điều này nếu có thể, sẽ rất tốn công sức để tách ra và thay thế bằng thứ khác (hàng tá cài đặt cấu hình được sử dụng ở hàng trăm nơi). Mã hiện tại rất chuẩn: Tôi đã cập nhật nhà cung cấp tùy chỉnh của mình để nó tìm nạp tất cả các giá trị cấu hình từ tất cả các cơ sở dữ liệu đối tượng thuê đã biết và thêm tất cả chúng vào hệ thống cấu hình, có tiền tố là số nhận dạng đối tượng thuê, vì vậy danh sách tất cả các giá trị cấu hình được tìm nạp từ n cơ sở dữ liệu khác nhau có thể trông giống như sau: Key Value =============================================== TenantABC:MyAppSettings:FavouriteColour Green TenantABC:MyAppSettings:LuckyNumber 42 TenantDEF:MyAppsettings:FavouriteColour Blue TenantDEF:MyAppSettings:LuckyNumber 37 ... TenantXYZ:MyAppSettings:FavouriteColour Yellow TenantXYZ:MyAppSettings:LuckyNumber 88Những gì tôi muốn có thể làm là bằng cách nào đó tùy chỉnh cách cấu hình bị ràng buộc để nó giải quyết đối tượng thuê cho yêu cầu hiện tại và sau đó sử dụng các giá trị thích hợp, ví dụ: một yêu cầu trên abc.myapp.com sẽ tuân theo cấu hình giá trị "Green" và "42", v.v., mà không cần phải thay đổi tất cả các vị trí phụ thuộc tiêm IOptionsMonitor |