完整的錯誤我得到的是:的SQL Server 2008:確保IncludeMetadataConvention已被添加到DbModelBuilder公約
型號的兼容性無法進行檢查,因爲該數據庫不包含模型元數據。確保IncludeMetadataConvention已被添加到DbModelBuilder約定中。
我已經用SQL Server Compact試過了,它工作正常,但主機提供程序只支持專用服務器的CE,我在共享計劃中,所以我使用的是SQL Server 2008。 db的格式如下:
<connectionStrings>
<add name="DBContext"
connectionString="Data Source=1.1.1.1;Initial Catalog=dbname;User Id=user;Password=pass;"
providerName="System.Data.SqlClient"/>
</connectionStrings>
我也有一個在Application_Startup中運行的DatabaseInitializer。如果需要進一步的代碼,請告訴我?我也沒有創建edmx數據模型,我使用的是EF Code First。
我改變了初始化代碼總是刪除數據庫,但現在我得到錯誤,在數據庫'master'中拒絕了CREATE DATABASE權限。我不知道爲什麼當我告訴它使用初始目錄時我會得到這個結果。
我傳入null給SetInitializer現在,但現在我得到以下錯誤:
無法打開數據庫「DBNAME」由登錄請求。登錄失敗。 用戶'用戶'登錄失敗。
我仍在使用上面的連接字符串。
當我踏入這一步時,我意識到你所說的一切以及發生了什麼。現在,即使我創建了數據庫,它也不會創建我的表格Movies。這是說dbo.Movies是一個無效的對象。我有DbSet電影{get; set;}代碼 –
Xaisoft
2012-01-10 15:54:36
這是在最後一段中解釋的。內置數據庫初始化器只能創建數據庫和表。他們不會用表格填充現有的數據庫,所以你的數據庫仍然是空的。 – 2012-01-10 15:56:32