0

我想弄清楚我是否做錯了什麼。我有一個MVC5 EF6項目。我已將它放在共享主機服務器上的public_html文件夾中。我創建了一個MySQL數據庫並添加了一個用戶。我已經確保將MySql.Data.Entity.EF6.dll和MySql.Data.dll包含在項目中並引用。共享主機服務器上的連接字符串

我有以下的連接字符串中我的web.config:

<connectionStrings> 
    <add name="DefaultConnection" providerName="MySql.Data.MySqlClient" connectionString="server=s023.someserver.com;UserId=shost_admin;Password=1Ycdcamj71Zh;database=shost_MySite;CharSet=utf8;Persist Security Info=True"/> 
</connectionStrings> 

我已經試過幾件事情,我刪除了字符集和堅持安全信息行,它仍然無法正常工作。服務器部分我不是100%肯定,其中從這樣得到我從PHP得到它我的管理運行下面的查詢:

SHOW VARIABLES WHERE Variable_name = 'hostname'

本地我使用SQL Server數據庫來測試和不工作正常一個順利。連接字符串的名稱是相同的,所以我知道它正試圖擊中正確的連接字符串,但我覺得我錯過了配置。

,我每次都遇到的錯誤信息是:

出錯訪問數據庫。這通常意味着與數據庫的連接失敗。檢查連接字符串是否正確,並且正在使用適當的DbContext構造函數來指定它或在應用程序的配置文件中找到它。有關DbContext和連接的信息,請參見http://go.microsoft.com/fwlink/?LinkId=386386。有關失敗的詳細信息,請參閱內部例外。

編輯:

發現了問題,我必須也指定端口,並在web.config中entitiyframework部分。

完整的答案在這裏:http://dev.mysql.com/doc/connector-net/en/connector-net-entityframework60.html

+0

_服務器部分我並不是100%確定從哪裏得到的,所以我從PHP_獲得它 - 你怎麼知道Sql服務器安裝在同一臺機器上? – Pawel

+0

@Pawel我不知道,這是週末,我無法與設置此服務器的人聯繫,但這是我唯一需要爲客戶端設置所有設置的唯一時間。 CPanel無法告訴我這些信息,至少我沒有看到任何信息。所以我想我會嘗試從服務器變量中獲取它並嘗試運氣。 – Bojan

+1

首先,我想說...我希望你沒有使用真實的用戶名和密碼。如果是這樣,不要忘記改變它。 – Creator

回答

0

的問題是,在連接字符串沒有指定端口。