Nguon: Microsoft Learn · .NET 8.0
ASP0000: Không gọi 'IServiceCollection.BuildServiceProvider' trong 'ConfigureServices'
| - | Giá trị |
|---|---|
| Rule ID | ASP0000 |
| Category | Usage (Sử dụng) |
| Fix is breaking or non-breaking | Non-breaking (Không phá vỡ) |
Nguyên nhân
Một lời gọi đến BuildServiceProvider đã được phát hiện trong code khởi động ứng dụng.
Mô tả quy tắc
Việc gọi BuildServiceProvider từ code ứng dụng dẫn đến việc tạo ra nhiều hơn một bản sao của các dịch vụ singleton (đơn thể), điều này có thể dẫn đến hành vi ứng dụng không đúng. Hãy xem xét các lựa chọn thay thế như dependency injecting (tiêm phụ thuộc) các dịch vụ làm tham số cho Configure.
Cách sửa vi phạm
Xóa lời gọi đến BuildServiceProvider khỏi code khởi động ứng dụng.
Khi nào có thể bỏ qua cảnh báo
Có thể bỏ qua quy tắc này một cách an toàn nếu việc cập nhật ứng dụng để loại bỏ lời gọi đến BuildServiceProvider là không đơn giản và bạn đã kiểm tra kỹ lưỡng ứng dụng để đảm bảo rằng nhiều dịch vụ singleton không được thêm vào.