2
我正在用NUnit和Entity Framework編寫一些UnitTests。 如何從實體框架級別刪除整個localdb數據庫?在Entity Framework中刪除localdb代碼優先
注意:我不想清除表格的數據。我想刪除整個數據庫。
而且我能夠創建我的應用程序工作目錄的LocalDB文件中提供的數據庫尚未建立:
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "");
var testDbFileName = String.Format(@"UnitTestDB.mdf");
var testDbFileNameWithPath = path + @"\" + testDbFileName;
var connectionString =
String.Format(
@"Data Source=(localdb)\V11.0;Initial Catalog={0};Integrated Security=True;AttachDBFilename={1};MultipleActiveResultSets=True",
"UnitTestDB", testDbFileNameWithPath);
//Here would be the code passing connection string to DbContext and so on..
只刪除文件「UnitTestDB.mdf」是不夠的。在SQL Management Studio中仍然有對db的引用
謝謝,非常有用的答案。在閱讀之前,我通過生成一個新的Guid在TestFixture中創建了一個新的數據庫,以便每次都重新創建數據庫(及其結構)。然後我從SQL Management Studio級別刪除所有數據庫。 – lixonn 2013-02-21 11:30:16