Connectionstring问题

时间:2011-10-28 14:32:52

标签: .net sql-server connection-string

实体框架生成的连接字符串如下所示。

<add name="ETestEntities" connectionString="metadata=res://*/Models.TestModel.csdl|res://*/Models.TestModel.ssdl|res://*/Models.TestModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=bogus\sqlexpress;Initial Catalog=ETest;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />

我ftp部署了应用程序,创建了数据库(我将其命名为ETest)并创建了一个用户。 我得到的指示是:<​​/ p>

In order to connect to SQL Server 2008 from Management Studio, Enterprise Manager, Query Analyzer or other client software you can use the following SQL Server address:
1.2.3.4

You may also use SQL Server address above in your application connection strings, for example:
Classic ASP (ADO Library)   Provider=SQLOLEDB;Data source=1.2.3.4;Initial catalog=databaseName;User Id=userName;Password=password;
ASP.NET (ADO.NET Library)   Server=1.2.3.4;Database=databaseName;Uid=userName;Password=password;

我在www.connectionstrings.com

中尝试了以下操作
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword; 

Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;

如何修改连接字符串以使其正常工作?

似乎这样工作:

Connection string: Data Source=dataSource;Network Library=dbmssocn;Connection Timeout=15;Packet Size=4096;Integrated Security=no;User ID=user;Password=pass;Encrypt=no;
Connection timeout: 15
Database: ETest
Datasource: dataSource
Network packet size: 4096
Server version: 10.00.4311
Work station id: WIN-HS1ITVC2D4K

3 个答案:

答案 0 :(得分:2)

虽然不能直接回答您的问题,但此网站几乎适用于任何连接字符串问题:http://www.connectionstrings.com/

冒着听起来像商业广告的风险:这是连接字符串的一站式服务!

答案 1 :(得分:0)

试试这样:

Provider=SQLNCLI10;SERVER=myServerAddress;DataTypeCompatibility=80;Database=myDataBase;User Id=myUsername;Password=myPassword

希望这有帮助。

答案 2 :(得分:0)

使用Entity Framework,还有一个额外的抽象 1 。为您生成的连接字符串,带有几个添加的换行符:

metadata=res://*/Models.TestModel.csdl|res://*/Models.TestModel.ssdl|res://*/Models.TestModel.msl;
provider=System.Data.SqlClient;
provider connection string=&quot;Data Source=bogus\sqlexpress;Initial Catalog=ETest;Integrated Security=True;MultipleActiveResultSets=True&quot;
可以看到

包含provider connection string属性,此属性的值是“正常”连接字符串(撤消XML转义):

"Data Source=bogus\sqlexpress;Initial Catalog=ETest;Integrated Security=True;MultipleActiveResultSets=True";

您需要替换此内部连接字符串的Data SourceInitial Catalog属性的值。


1 本质上,EF连接字符串告诉EF运行时从何处获取模型(来自程序集中的资源)以创建内存模型,要使用的EF提供程序以及连接要传递给该提供程序的字符串 - 这是服务器,实例或数据库更改时需要调整的最后一部分。