0

我有一个应用程序可以正常工作,与实体框架和C#和SQL Server。在它的模型层我有App.Config中我有连接字符串更改连接字符串上的服务器的名称

<add name="Context1" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=server1;initial catalog=DB1;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

我tarnsfered数据库到另一台服务器,所以我改变了

Server1 to .\sqlExpress 

Server1 to PCNAME\sqlExpress 

它成为的东西像这样

<add name="Context1" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.\sqlExpress;initial catalog=DB1;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

最后,我构建了项目和解决方案。该应用程序不适用于新的dbserver。它给出了以下错误

Connection = 'context.Database.Connection' threw an exception of type 'System.InvalidOperationException' 

    base {System.SystemException} = {"No connection string named 'Context1' could be found in the application config file."} 

哪个Context1存在,我只是改变了它的服务器名称。 我能为它做些什么?

谢谢

+0

添加完整的Web配置只是掩盖了私人数据。很难这样猜测 – Sherlock

+0

在这里找到类似的问题:http://stackoverflow.com/questions/12622408/no-connection-string-named-myentities-could-be-found-in-the-application-config。确保您已在您的解决方案上设置了正确的启动项目,并在\ SQLEXPRESS之前提供您的机器名称。 –

+0

@TetsuyaYamamoto:通过更改。\ sqlExpress到Server1,再次一切正常,但与。\ sqlExpress它不会工作,所以启动项目是好的 – nnmmss

回答

0
<add name="ContextName" connectionString= "Data Source=.; Database=DB_Name; User Id=username; Password=pw" providerName="System.Data.SqlClient" /> 

尝试使用此连接字符串

+0

我可以在实体框架中使用吗?在实体框架中使用它很重要 – nnmmss

+0

是的,你可以使用它... –

相关问题