簡體   English   中英

無法使用實體框架部署C#應用

[英]cannot deploy c# app with entity framework

我已經完成了一個桌面c#項目,其中在我的計算機中使用了Entity Framework 5和SQL Server 2008,它運行良好,但是我創建了一個虛擬機並嘗試將其部署在其中,但是我遇到了問題。

我收到此錯誤: System.Data.EntityException:基礎提供程序在打開時失敗。 ---> System.Data.SqlClient.SqlException:建立與SQL Server的連接時發生與網絡相關或特定於實例的錯誤。 服務器未找到或無法訪問。 驗證實例名稱正確,並且已將SQL Server配置為允許遠程連接。

我使用installshield進行安裝,並且在visrual機器中安裝了sql express,在安裝過程中,我創建了數據庫和所有表。

我的連接字符串是這樣的: name="BussinessContainer" connectionString="metadata=.\\Bussiness.csdl|.\\Bussiness.ssdl|.\\Bussiness.msl;provider=System.Data.SqlClient;provider connection string="data source=localhost;initial catalog=yingyangDB;User ID=username;Password=password;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" name="BussinessContainer" connectionString="metadata=.\\Bussiness.csdl|.\\Bussiness.ssdl|.\\Bussiness.msl;provider=System.Data.SqlClient;provider connection string="data source=localhost;initial catalog=yingyangDB;User ID=username;Password=password;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient"

我應該更改連接字符串嗎? 在發布此消息之前,我進行了很多搜索,但沒有任何幫助。

SQL Express(通常)不會創建為“默認實例”-即通過localhost連接不足以連接到本地SQL Express實例。

您可能需要使用localhost\\SQLExpress連接到本地SQL Express實例(實例名稱可能有所不同,但通常不是這樣。

此外,您在連接字符串中指定一個Initial Catalog ,我假設它指向您的新數據庫。 但是,您說的是在安裝過程中創建了數據庫-因此該數據庫可能實際上尚未存在於您的實例中。 那可能導致它失敗。 嘗試將其從字符串中取出,看看是否可以連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM