我有一個WPF應用程序,它從代碼內實體模型更新我的數據庫。有些情況下,它會在用戶連接時更新數據庫,我希望將其置於單用戶模式以避免錯誤。有沒有辦法在C#中將數據庫設置爲單用戶模式?
我也想避免使用sql。我知道我可以使用運行SQL:
DataContext.ExecuteCommand("ALTER DATABASE...")
我寧願在C#庫使用命令來做到這一點,但我不知道去哪裏找。
有沒有辦法將數據庫設置爲SUM而不使用SQL?
我有一個WPF應用程序,它從代碼內實體模型更新我的數據庫。有些情況下,它會在用戶連接時更新數據庫,我希望將其置於單用戶模式以避免錯誤。有沒有辦法在C#中將數據庫設置爲單用戶模式?
我也想避免使用sql。我知道我可以使用運行SQL:
DataContext.ExecuteCommand("ALTER DATABASE...")
我寧願在C#庫使用命令來做到這一點,但我不知道去哪裏找。
有沒有辦法將數據庫設置爲SUM而不使用SQL?
所以我用了SMO服務器對象是這樣的:
Server server = GetServer();
if (server != null)
{
Database db = server.Databases[Settings.Instance.GetSetting("Database", "MyDB")];
if (db != null)
{
server.KillAllProcesses(db.Name);
db.DatabaseOptions.UserAccess = DatabaseUserAccess.Single;
db.Alter(TerminationClause.RollbackTransactionsImmediately);
的問題是,這個開得比我的DataContext這樣一個不同的連接踢自己關閉,而不是讓我訪問數據庫。最後,我不得不恢復使用SQL。
您可以使用SQLDMO來管理SQL Server對象。
DMO已棄用。 – LueTm 2014-12-29 08:59:27
的確如此,現在已經棄用了。鏈接實際上會帶您到2014 SMO對象。 – 2014-12-30 15:31:28