2014-09-02 34 views
0

因此,我複製項目解決方案形式我的朋友和所有遷移丟失,所以如果我改變像用戶名長度爲129,並說控制檯添加遷移它給了我空遷移? 所以沒有UP和DOWN如何告訴NuGet過去的遷移

那麼,我該如何做,告訴NuGet過去的遷移,我需要運行遷移全過程還是需要做其他事情?我有(遷移文件夾)?所有幫助是值得歡迎*

So here is the snapshot

我在MySQL

+0

這是什麼都用的NuGet或MySQL怎麼辦?在這方面,移民意味着什麼? – 2014-09-02 15:27:42

+0

我需要告訴nuget關於我嘗試get-migrations,但我無法工作,它必須與mysql做,因爲該數據庫正在使用遷移。 – Koko 2014-09-02 15:30:43

+0

*你在遷移什麼?或者,您是否創建了一個您已經編寫的現有NuGet包的更新? – 2014-09-02 15:55:28

回答

0

您可以指定像這樣運行的遷移:

update-database -TargetMigration:201405131513421_Inital 

然後你就可以升級到最新的版本是這樣的:

update-database 
+0

我會嘗試,但我想要做的是接下來,我不知道是否有命令。 我需要如果我例如在類User中更改某些內容,例如[必需,MaxLength(129)],然後在軟件包管理器控制檯中通知添加遷移ChangeLength實體框架創建該遷移。 – Koko 2014-09-02 15:39:32

+0

如果你的數據庫是最新版本的(即你剛剛成功完成了'update-database'),那麼你應該可以編寫「add-migration ChangeLength」,EF應該創建你的遷移。如果它不這樣做,那就告訴我們錯誤。您可以將'-verbose'開關添加到'add-migration'以獲取額外的細節。 – demoncodemonkey 2014-09-02 15:42:08

+0

也可以粘貼User的代碼,以便我們可以看到您要更新的字段的定義。 – demoncodemonkey 2014-09-02 15:44:59

1

下面將更新數據庫,以最新的移民

Update-Database 

如果不工作做出口和進口數據的基礎上,您可以單獨應用遷移

Update-Database -TargetMigration Initial