这个错误是什么意思?
初始化字符串的格式不符合从索引0开始的规范。
并且还收到此错误:
在配置中找不到指定的命名连接,不打算与EntityClient提供程序一起使用,或者无效。
我正在尝试在Visual Studio中的另一个项目中使用我的EF模型上下文。让我的EF应用程序开始真正遇到麻烦。 我像这样实例化模型上下文:
ctx = new VisitoriDataModel("VisitoriDataModel");
我将从数据层项目复制的连接字符串复制到包括web.config在内的所有项目中,但仍然没有运气。
还尝试了以下内容:
//model = new VisitoriDataModel(new EntityConnection("Name=VisitoriDataModel"));
//model = new VisitoriDataModel("Name=VisitoriDataModel");
//model = new VisitoriDataModel("VisitoriDataModel");
//model = new VisitoriDataModel();
ConnectionString是这样的:
metadata=res://*/Context.VisitoriDataModel.csdl|res://*/Context.VisitoriDataModel.ssdl|res://*/Context.VisitoriDataModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.\SQLEXPRESS;initial catalog=visitori;integrated security=True;multipleactiveresultsets=True;App=EntityFramework"
答案 0 :(得分:6)
连接字符串需要进入正在执行的项目中。如果这是一个网站,那将是web.config。确保它已正确嵌套,而不是在<system.web>
之类的其他节点内,您应该:
<configuration>
...
<connectionStrings>
<add name="VisitoriDataModel" connectionString="metadata=res://*/Context.VisitoriDataModel.csdl|res://*/Context.VisitoriDataModel.ssdl|res://*/Context.VisitoriDataModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.\SQLEXPRESS;initial catalog=visitori;integrated security=True;multipleactiveresultsets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
</connectionStrings>
...
</configuration>
另请注意,实体连接字符串中的提供者连接字符串周围的"
需要转义为"