我作了一件很勇敢愚蠢的動作..
除了程式碼的部份之外,其餘地方都用很暴力的方式修改了專案名稱及路徑
導致資料庫無法正常重生...(活該阿阿~)執行 'update-database' 後
會出現「XXXX-XXXXXXXX.mdf' already exists. Choose a different database name.」的錯誤訊息...
最莫名弔詭的是,該路徑下用 NotePad++ 搜尋所有檔名及檔案內容及已無任何 OLD_PROJNAME 的關鍵字
Database 'D:\WebExercise\OLD_PROJNAME\OLD_PROJNAME\OLD_PROJNAME\App_Data\aspnet-WebExecise-20170528092711.mdf' already exists. Choose a different database name.
Cannot attach the file 'D:\WebExercise\WebExecise\WebExercise\App_Data\aspnet-WebExecise-20170528092711.mdf' as database 'aspnet-WebExecise-20170528092711'.
※ 其中 OLD_PROJNAME 是舊的名稱,WebExecise 是新的專案名稱
以 「already exists. Choose a different database name.」、「update-database」等作為關鍵字 Google
找到了一大票的文章,看了不下十幾來篇,解答完全沒有一個可用的交集...
突然靈光一閃...該不會是用 「aspnet-WebExecise-20170528092711.mdf 」
後頭的數字「20170528092711」作為識別吧!
於是我在專案中搜尋「20170528092711」,發現只在 web.config 中出現兩次
我修改了此數字的「月」、「日」, 再次 'update-database' 後.....搞定!
幹了這件愚蠢的事後,更了解 Code-First 的概念啦...~
原來資料庫真的可以透過 migrations 好好的重生呢~!