2011-08-14 61 views
0

我是在視覺STDIO 2010年做單元測試然而,它不停地拋出來的異常錯誤:錯誤:26 - 錯誤定位服務器/實例指定

{"A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)"}**

我正在尋找解決這個問題,我知道這是Visual Studio和SQL Server之間的連接問題。 (也許,也許不是)

我試圖改變「App.config」和「Web.config」。

解決這個問題是否正確?如果是的話,你能舉出xml的例子來解決這個問題嗎?如果不是,我該如何解決這個問題?

回答

0

這是不可能確切說出是怎麼回事無碼(請張貼一些),但是從你的意見,我猜那是因爲你沒有正確設置SQL連接字符串。

大多數時候,你就必須在config文件中指定的連接字符串(儘管您可能已經在你的代碼是硬編碼?)。如果你正在使用類似實體框架的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=&quot;Data Source=localhost;Initial Catalog=MyDatabase;Integrated Security=True;MultipleActiveResultSets=True&quot;" 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> 
+0

\t \t \t <添加鍵= 「DSN」 值= 「數據源=本地主機\ sql2008dev;初始目錄= MYDATA;用戶ID =單元測試;密碼= 12345678;」/> \t < ---這是我做的 – NBB

+0

你能發佈試圖使用這個appSetting的代碼嗎? – JohnD

+0

另外,你能告訴我你是否已經成功連接到這個數據庫(可能在你的應用程序中,而不是單元測試?)。換句話說,你知道連接字符串的工作原理(是「localhost \ sql2008dev」和用戶名/密碼是否正確?) – JohnD

0

喜每個人,這是誰想要連接與WampServer或SQL Server Management Studio中的數據庫的解決方案,我嘗試它都和它的作品都仔細閱讀,我的英語不好(突尼斯開發對不起):

To使用EF(實體框架)代碼優先方法,從類創建數據庫: ** 1。首先創建上下文通用類exmple:

 Public class MyClassContext: DbContext 
 { 

Public MyClassContext(): base ("name = ConnStringLinkedForDb") { 

  Database.SetInitializer (new DropCreateDatabaseAlways <MyClassContext>()); 
}     
 Public DbSet <ClassX> ClassXs {get;set;} 
} 

2.在第二點中,標記:, 將位於數據層的「app.config」文件夾中,Web層中的「web.config」文件夾位於以下兩種情況下:

2.1 。如果你想與WAMP服務器(idUserName =根,PWD = '空')和我們的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.with SQL Server管理套件(服務器(來源)= YourServerNameInSqlServerManegementStudioProprity(onObjectExplorer),PWD = '空')和我們的BD將其服務器上:<?XML版本= 「1.0」 編碼= 「UTF-8」>

<ConnectionStrings> 
  <Add name = "ConnStringLinkedForDb" connectionString = "Data Source = YourServerNameInSqlServerManegementStudioProprity(onObjectExplorer); Initial Catalog = db_name_desired ;Integrated Security = true" providerName = "System.Data.SqlClient" />  
   </ ConnectionStrings> 

**

相關問題