Reputation: 60811
When referencing the configuration value in my context constructor, I face no issues with database connectivity:
public class MyDbContext : DbContext
{
public MyDbContext ()
: base("Name=Model1")
{
}
}
My App.config connection string looks like this:
<connectionStrings>
<add name="Model1"
connectionString="data source=10.4.4.3;initial catalog=mydatabase;persist security info=True;user id=myuser;password=mypass;MultipleActiveResultSets=True;App=EntityFramework"
providerName="System.Data.SqlClient" />
</connectionStrings>
However, when I hard-code the connection like so:
public class MyDbContext : DbContext
{
public MyDbContext ()
: base(@"data source=10.4.4.3;initial catalog=mydatabase;persist security info=True;user id=myuser;password=mypass;MultipleActiveResultSets=True;App=EntityFramework")
{
}
}
The exception I am getting is:
{System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Configuration.ConfigurationErrorsException: Configuration system failed to initialize ---> System.Configuration.ConfigurationErrorsException: Unrecognized element. (C:\ProgramData\SF\vm0\Fabric\work\Applications\abc.API.ProdAndPrice.O720.ProdLinesType_App285\ComponentsPkg.Code.1.0.0\Components.exe.Config line 38)
at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal)
at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(ConfigurationSchemaErrors schemaErrors)
at System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
--- End of inner exception stack trace ---
at System.Configuration.ConfigurationManager.PrepareConfigSystem()
at System.Configuration.ConfigurationManager.GetSection(String sectionName)
at System.Configuration.PrivilegedConfigurationManager.GetSection(String sectionName)
at System.Diagnostics.DiagnosticsConfiguration.GetConfigSection()
at System.Diagnostics.DiagnosticsConfiguration.Initialize()
at System.Diagnostics.DiagnosticsConfiguration.get_IndentSize()
at System.Diagnostics.TraceInternal.InitializeSettings()
at System.Diagnostics.TraceInternal.get_Listeners()
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimePropertyInfo.GetValue(Object obj, Object[] index)
at Microsoft.Owin.Hosting.Utilities.SettingsLoader.FromConfigImplementation..ctor()
at Microsoft.Owin.Hosting.Utilities.SettingsLoader.<LoadFromConfig>b__0()
at System.Threading.LazyInitializer.EnsureInitializedCore[T](T& target, Func`1 valueFactory)
at Microsoft.Owin.Hosting.Utilities.SettingsLoader.LoadFromConfig(IDictionary`2 settings)
at Microsoft.Owin.Hosting.Engine.StartContext..ctor(StartOptions options)
at Microsoft.Owin.Hosting.WebApp.StartImplementation(IServiceProvider services, StartOptions options, Action`1 startup)
at Microsoft.Owin.Hosting.WebApp.Start(String url, Action`1 startup)
at Components.OwinCommunicationListener.OpenAsync(CancellationToken cancellationToken) in F:\TFS\ooo720 Res\ooo720\DEV\Source\enterprise\abc.API.ProdAndPrice.O720.ProdLines\Components\OwinCommunicationListener.cs:line 78
at Microsoft.ServiceFabric.Services.Runtime.StatelessServiceInstanceAdapter.<OpenCommunicationListenersAsync>d__19.MoveNext()}
What am I doing wrong? Why is the connection failing?
Upvotes: 0
Views: 409
Reputation: 55
You don't need the connection string in app.config when you are assigning a key to it, and not using it and just passing the connection string in constructor
Upvotes: 1