2013-11-26 73 views
0

我試圖執行代碼第一次遷移來打開文件流,以便它不必手動完成。如何獲取數據庫的名稱在代碼優先遷移

我當然可以配置文件在數據庫級別流的(雖然我不能設置對服務的設置...)

但我需要這樣的

ALTER DATABASE DBNAME 

執行的東西ADD FILEGROUP FILESTREAMGroupName

CONTAINS FILESTREAM

所以我需要得到我是從所使用的數據庫的名稱。

一旦我可以得到,那麼我可以通過查找文件找出主MDF的路徑,然後將文件流組的路徑設置爲我的下一個命令,但我無法弄清楚如何獲取數據庫名稱,同時在DbMigration中。

想法?

+0

有從DbMigration對象內的原始連接的訪問​​權限。您必須從您的web.config或app.config文件中讀取連接字符串,但是您無法確定DbMigration將在哪個連接上執行。 –

+1

[在DbMigration中向上訪問數據庫名稱](http://stackoverflow.com/questions/20118141/access-the-database-name-inside-up-in-dbmigration) – Colin

回答

0

科林關於被誘惑的評論是正確的。最簡單的方法是在腳本中使用db_name()。

4

如果您正在使用MSSQL2012可以使用

ALTER DATABASE CURRENT