I have an ASP.Net Core application that uses EF Core.
I use ASP.Net Identity and share the same DBContext for my app's entities.
I have set my connection string to an Azure SQL database to have MultipleActiveResultSet=True.
It works for a day or two, but eventually it fails with the error:
The connection does not support MultipleActiveResultSets.
I don't think MARS is the real issue since it worked for the first two days it was up.
I am using ASP.Net Core's built-in DI to set my DbContext.
services.AddDbContext<AppDbContext>(options => options.UseSqlServer(appDbContextConnectionString));
My understanding is that the default lifetime for the DbContext above is Transient (per web request).
Is it alright to share the same DBContext with ASP.Net Identity or should I have a separate one for my app's entities, pointed to the same DB?
I don't know if this is an issue with EF Core, ASP.Net Core or with SQL Azure configuration.
I had a similar issue and I found that the problem was that I missed an await statement in front of my method.
And the problem was gone.