我建立使用實體框架和代碼優先的方法和我的Web應用程序真的很喜歡它,到目前爲止,除了一兩件事。初始化過程和播種數據是垃圾。EF 4.1代碼首先初始化 - 替代
我已經將它設置爲推薦使用ASP.NET MVC與setinitialiser被稱爲應用程序啓動和自定義初始化類添加數據,但它似乎總是默默地消失,從來沒有工作。 (數據庫創建工作不僅僅是數據初始化失敗)
任何人都可以對這個或運行從一個文件中的SQL腳本的方式提供推薦paractice。
給定的添加數據的方法,尤其是演示站點的方法看起來很麻煩,我寧願直接從作爲安裝過程的一部分運行一次的文件運行數據庫腳本,而不是依賴於過程沒有任何跡象表明某些事情已經出錯。
編輯
我已經注意到它拋出異常(愚蠢的日期時間 - >應該由實體框架來處理DATETIME2轉換錯誤)
但問題的一部分,可能是我的版本明年2010年不會出現錯誤,它在調試時似乎很麻煩。
但問題仍然有效。我發現它本質上是在數據庫上運行sql腳本的一種繁瑣和錯誤的方式。當有人在IIS中安裝我的Web應用程序時,不希望結束一大堆方法和類來設置演示站點。
不會有一個靜態的sql腳本首先打敗了code-first的目的嗎?我不能說我遇到了種子問題,關於這個問題的更多細節和代碼片段會有所幫助。 – 2011-04-24 16:40:57
沒有太多的代碼要粘貼這個方法非常簡單,我可以在種子方法中插入斷點並且它們可以工作,但context.savechanges似乎永遠不會工作。 – eaglestorm 2011-04-25 02:53:04
如果沒有太多的代碼要粘貼,爲什麼你拒絕這樣做? – 2011-04-25 03:18:31