我認爲我現在有幾個類似的問題,但我現在對Google搜索和閱讀很困惑。由於我有一個代碼優先的方法,我添加了遷移支持,更新到數據庫,現在我需要一些討厭的東西,比如觸發器,存儲過程和視圖。據我瞭解,我需要編寫SQL創建觸發器並創建存儲過程作爲字符串到我的C#代碼第一代碼。但是哪裏?我需要添加它們(如靜態或常量字符串)?我還需要編寫drop triggers/stored procs字符串嗎?以及如何將它們整合到下一個遷移步驟中?有沒有人知道一個真正有用的關於這個話題的逐步博客?EF代碼第一觸發器支持的最佳方式
我得到了一個建議,用「add-migration」命令生成下一個遷移步驟,然後用觸發器定義更新Up()和Down()方法。這很明顯,但是距離代碼第一個觀點有點遠,我害怕表定義和表觸發器(和存儲過程)將被分開。另一個建議說覆蓋上下文OnModelCreating()...但我不能看到它何時將執行,如何鏈接到特定的遷移步驟...
而且請不要爭論「使用觸發器一個愚蠢的東西「,因爲我的問題比這更廣泛......如何將任何先進的sql server」對象「添加到第一個不容易在C#中定義爲代碼的代碼中?
Ahm ...所以你建議直接向Up()方法添加新代碼。但是當(例如)您想要稍後定義其他觸發器時,您必須爲每個遷移定義不同的腳本文件?你將觸發器的定義遠離代碼第一個源代碼......我看到了優點和缺點...但是,謝謝你的答案! :) –