Tôi có ứng dụng ASP.Net Core sử dụng EF Core.Lỗi liên tục với EF Core: Kết nối không hỗ trợ MultipleActiveResultSets
Tôi sử dụng ASP.Net Identity và chia sẻ cùng một DBContext cho các thực thể của ứng dụng của tôi.
Tôi đã đặt chuỗi kết nối của mình thành cơ sở dữ liệu Azure SQL để có MultipleActiveResultSet = True.
Nó hoạt động cho một hoặc hai ngày, nhưng cuối cùng nó không thành công với các lỗi:
The connection does not support MultipleActiveResultSets.
Tôi không nghĩ MARS là vấn đề thực sự vì nó làm việc cho hai ngày đầu tiên nó đã được lên.
Tôi đang sử dụng DI tích hợp của ASP.Net Core để đặt DbContext của tôi.
services.AddDbContext<AppDbContext>(options =>
options.UseSqlServer(appDbContextConnectionString));
Hiểu biết của tôi là thời gian mặc định cho DbContext ở trên là Tạm thời (theo yêu cầu web).
Có ổn không khi chia sẻ cùng DBContext với ASP.Net Identity hoặc tôi có một tài khoản riêng cho các thực thể của ứng dụng, được chỉ cho cùng một DB không?
Tôi không biết đây có phải là vấn đề với EF Core, ASP.Net Core hoặc với cấu hình SQL Azure hay không.
https://github.com/aspnet/EntityFrameworkCore/issues/6491 Ý của anh ấy là gì: "Phần mềm trung gian có phạm vi cho mỗi yêu cầu không?" –
bạn có thể chia sẻ mã nơi bạn tiêm hoặc tạo ngữ cảnh db của mình không? – hugoterelle
Bạn có thể muốn kiểm tra xem chuỗi kết nối của bạn với "MultipleActiveResultSet = True" có thực sự được sử dụng trong thời gian chạy hay không. Chỉ cần đoán thôi. https://stackoverflow.com/questions/12690453/sql-azure-getting-an-error-there-is-already-an-open-datareader-associated-wit –