1
我有存儲過程創建的解決方案,就像在此答案中一樣https://stackoverflow.com/a/15171900。在Code First DbMigration中更新存儲過程
我在我最初DbMigration運行
Sql(Properties.Resources.Create_sp_DoSomething);
。
我的sql腳本有代碼首先刪除現有的SP,然後創建新的更新的SP。所以whene我在新DbMigration運行
Sql(Properties.Resources.Create_sp_DoSomething);
,和內部SP邏輯變成一切工作正常。
出現的問題時,我想更新存儲過程的列(可以說IsActive),它被添加到模型中後提交,我不存在的數據庫更新(所以新的數據庫創建)。 然後它失敗
無效的列名稱'IsActive'。
任何很好地解決的是,除了去除到
SQL(Properties.Resources.Create_sp_DoSomething)所有現有呼叫;
只有在最新的DbMigration中才有它。
當你做出這個腳本冪(這是需要),你需要添加* GO *下降之間的語句和創建SP,這* ExecuteSqlComma方法nd()*將需要類似https://smehrozalam.wordpress.com/2009/05/12/c-executing-batch-t-sql-scripts-with-go-statements/ –