2012-05-28 115 views
0

在本地系統上使用EFCodeFirst創建數據庫已完成。但是,當試圖在Web服務器主機上創建數據庫時,它會發出錯誤「創建數據庫權限被拒絕」。在Web服務器主機上使用EFCodeFirst創建數據庫

我無法找出這方面的實際問題。

如果我在任何其他本地系統上使用EFcodefirst創建數據庫,但它不能與Web服務器主機一起使用,那麼一切工作正常。

請幫忙!

謝謝..

回答

0

因爲你的共享Web服務器主機上的模式是不是「DBO」。所以你不能或者你沒有足夠的權限來創建數據庫(當它找不到由連接字符串指定的數據庫時,這是EF代碼的默認行爲)。 你有3種選擇(至少):

  • 索要更高的權限(這是很不幸)
  • 首先創建一個新的空數據庫,或要求(主機),要做到這一點,然後指定其詳細信息在連接字符串中。
  • 或者只是關閉數據庫遷移,並盡一切努力(設置Database.SetInitializer<MyContext>(null);)。
+0

因爲這確實讓我超過了錯誤,所以能夠理解爲什麼權限設置爲(在這種情況下爲已知的IIS APPPOOL用戶)後無法修改主數據庫的權限仍然很好這樣做。 – beauXjames

相關問題