2

我有標準的asp.net mvc應用程序,並首先使用實體​​框架代碼,並以存儲庫作爲後端。沒有未決的遷移,當我執行應用程序時,一切正常。相同的DbContext在解決方案中的不同項目下行爲不同

我添加了一個雲服務項目(具有一個輔助角色),並使用了與我的asp.net mvc應用程序相同的dbcontext,但是當我在azure模擬器上運行雲服務時,它會拋出異常,說db模型被改變了,我需要添加遷移和更新數據庫。

自從創建數據庫以來,支持'xDbContext'上下文的模型已經發生了變化。考慮使用的Code First遷移來更新數據庫

案例1:當我添加遷移,它給了我,我已經執行了一些變化,他們可以在數據庫中看到。

案例2:當我從我的web應用程序添加遷移時,它會創建一個空遷移。

爲什麼在一個解決方案中,不同項目下的dbcontext行爲不同?我覺得這很奇怪,還是我錯過了什麼?

我真的很感激,如果你可以指示我的地方。 謝謝

+0

這兩種情況都針對同一個數據庫實例運行? – John

+0

是的。我有一個類庫,其中包含我的實體,數據庫配置和dbContext類,它是作爲兩個項目的參考添加的。 –

+0

使用該庫的兩個項目都帶有相同版本的實體框架嗎?也許這是一個愚蠢的問題,但我不認爲它可能是一些愚蠢的錯誤之外的任何事情。在一個案例中EF所要求的變化並不重要,對吧?我們正在說ALTER TABLE語句,是嗎? – John

回答

0

不確定,但請記住,使用哪個數據庫取決於運行程序集的配置文件。因此,運行雲將使用雲配置,運行Web項目將使用Web配置。甚至運行單元測試也會使用單元測試項目中的配置文件。

相關問題