-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Design: Allow IDesignTimeDbContextFactory to short-circuit service provider creation #9076
Comments
WorkaroundTo prevent EF Core from calling |
Just comment what is in Configure() from Startup when you use the tools for migrations. |
Is there an issue in Hosting that we should report here? If we only ever access the service provider from the |
From what I see at a quick look on the code BuildWebHost will always call that. There is a method there seems that is called in BuildWebHost private static ConfigureBuilder FindConfigureDelegate(Type startupType, string environmentName)
{
return new ConfigureBuilder(StartupLoader.FindMethod(startupType, "Configure{0}", environmentName, typeof (void), true));
} Maybe I'm wrong |
@bricelam AFAIR there was a conversation about this around the preview 1 timeframe when there was an exception thrown because there was no certificate to run the web host in production mode. Our general feedback was that the call to If this doesn't change @glennc said he would follow up on that. Not sure if issues have been filed. |
I have a seed code on Startup.cs file which throws exception since there is no database. It should not run Program.cs if there is a IDesignTimeDbContextFactory implementation. |
Note from triage: this hasn't shown itself to be a major problem so far, so we are closing this issue for now. If you hit this then please provide some feedback on this issue and we will re-assess based on the feedback. |
It's unclear to me how this is not a major problem with an easy fix. I didn't know or expected this behavior, so every time I ran "dotnet ef database update" all my configuration would load, a connection would be made to my RabbitMQ instances etc etc... causing the migration to fail if something went wrong there. Please re-consider. |
Can't you just check if there's |
Any solution ? |
I don't understand how this is closed. It's still a problem! My app does configuration value verification at startup and those values are blank when migrations are scripted during a build because I don't want secrets checked into source control. They get set only at release time, when the migrations have already been generated and packaged in the build artifact. |
@eavonius Can you create a new issue? We could avoid app service discover entirely if...
|
My apologies for commenting on such an old and closed issue, but with .NET/EF 6, it seems I'm back to 0 regarding this problem. What is the suggested way of preventing the |
@Rene-Sackers See #27322. |
Implement some way to specify/find a DbContext and IDesignTimeDbContextFactory such that BuildWebHost is never called even if it is present. This should allow a clean escape hatch to be used when building the service provider has side effects that the app needs to prevent.
See discussion in #9033
The text was updated successfully, but these errors were encountered: