我在Visual Stdio 2010中进行单元测试。但是,它仍然抛出异常错误:
{“建立与SQL Server的连接时发生与网络相关或特定于实例的错误。未找到服务器或无法访问服务器。验证实例名称是否正确以及SQL Server是否配置为允许远程连接。(提供程序:SQL网络接口,错误:26 - 查找指定的服务器/实例时出错)“} **
我正在寻找解决这个问题,我知道这是visual studio和sql server之间的连接问题。 (也许,也许不是。)
我试图更改“App.config”和“Web.config”。
解决这个问题是正确的方法吗?如果是,你能给出xml的例子来解决这个问题吗?如果不是,我该怎么做才能解决这个问题?
答案 0 :(得分:0)
没有代码就不可能确切地说出发生了什么(请发一些),但是从你的评论来看,我猜是因为你没有正确设置SQL连接字符串。
大多数情况下,你会在.config文件中指定一个连接字符串(尽管你的代码中可能有硬编码?)。如果您使用的是Entity Framework,app.config可能如下所示:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="MyEntities" connectionString="metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost;Initial Catalog=MyDatabase;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
</configuration>
根据您的代码执行的操作,它可能看起来不同(再次发布一些代码)。如果代码在应用程序中运行,但在单元测试中失败,则可以将应用程序的app.config文件中的连接字符串复制到单元测试的app.config文件中。如果您的单元测试没有app.config文件,只需创建一个。
顺便说一下,上面的配置只是你如何指定连接字符串的一个例子......你的代码可能需要不同的东西。
希望这有助于指明你正确的方向......
更新:仍然希望看到一些代码,但如果它正在寻找数据库中的连接字符串,它们通常看起来像这样:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="MyConnectionString"
connectionString="Data Source=myserver;Initial Catalog=MyDatabase;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
答案 1 :(得分:0)
Hi Every One这是一个解决方案,适合那些想要使用WampServer或Sql Server Management Studio连接数据库的人,我同时尝试这两种方式,它既可以工作,也可以仔细阅读,对不起我的坏英语(突尼斯开发):
使用EF(实体框架)Code First方法从类创建数据库: ** 1。首先创建Context Common类例:
Public class MyClassContext: DbContext
{
Public MyClassContext (): base ("name = ConnStringLinkedForDb") {
Database.SetInitializer (new DropCreateDatabaseAlways <MyClassContext>());
}
Public DbSet <ClassX> ClassXs {get;set;}
}
2.在第二点,标签:, 将在2个文件“app.config”中的数据层和“web.config”中的Web层中,在以下两种情况下:
2.1。如果你想与Wamp Server建立连接(idUserName = root,pwd ='empty'),我们的bd将在它的服务器上:
<ConnectionStrings>
<Add name = "ConnStringLinkedForDb" connectionString = "server = localhost; user id = root; persistsecurityinfo = True; database = db_name_desired; allowuservariables = True" providerName = "MySql.Data.MySqlClient"/>
</ ConnectionStrings>
2.2。使用sql Server Management Studio(ServerName(Source)= YourServerNameInSqlServerManegementStudioProprity(onObjectExplorer),pwd ='empty')并且我们的bd将在其服务器上:
<ConnectionStrings>
<Add name = "ConnStringLinkedForDb" connectionString = "Data Source = YourServerNameInSqlServerManegementStudioProprity(onObjectExplorer); Initial Catalog = db_name_desired ;Integrated Security = true" providerName = "System.Data.SqlClient" />
</ ConnectionStrings>
**
答案 2 :(得分:0)
我有一个类似的问题。如果您有:
bin->Debug
或bin->Release