遇到了這個問題 我是在server 2016 的環境下
windows 10 發行後 直接架在IIS可以正常存取 換成server2016 就不行
得知要改連接字串 可是變成底下圖片的錯誤 找不出答案 尋求幫助
連接字串
<add name="dbShoppingEntities" connectionString="metadata=res://*/Models.dbShoppingModel.csdl|res://*/Models.dbShoppingModel.ssdl|res://*/Models.dbShoppingModel.msl;provider=System.Data.SqlClient;provider connection string="data source=Myserver\SQLEXPRESS;attachdbfilename=|DataDirectory|\dbShopping.mdf;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
錯誤訊息是相同名稱的資料庫已存在
檢查看看是否已經有相同名稱的資料庫
現在問題變成這樣
這是我的連接字串↓
<add connectionString="Server=myServer\SQLEXPRESS;Database=C:\USERS\MAN\DESKTOP\TEST1116\APP_DATA\DBSHOPPING.MDF;Integrated Security=true" name="dbShoppingEntities" providerName="System.Data.EntityClient" />
是我的連接字串有誤嗎? 如果有誤,正確寫法是什麼呢?
你連的是local db吧?
那怎麼會有server?
我是在 server 2016 架設的, DB檔案是放在 D:\DB\DBSHOPPING.MDF 這樣子連接字串要怎麼寫呢?
因為我有成功讓別人可以連到我IIS設定的網站,可是連到要讀取資料庫的頁面就會這樣錯誤
所以我在想是不是連接字串方面有問題
rong105100313
應該是Data Source才對吧...
而且連接對象要改自己的sql server名稱
試試吧 正常用visual studio 連線工具產生比較準確
<add name="dbShoppingEntities" connectionString="metadata=res://*/Models.dbShoppingModel.csdl|res://*/Models.dbShoppingModel.ssdl|res://*/Models.dbShoppingModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=Myserver\SQLEXPRESS;AttachDbFilename=D:\DB\DBSHOPPING.MDF;Integrated Security=True;Connect Timeout=30;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
安全性=>登入 找到 NT AUTHORITY\SYSTEM 按右鍵,把它的伺服器角色中的dbCreator勾選
試看看
我大概9月底有碰到很類似的問題,所以就用類似的解法告訴你,但不確定是否能解決。