我有一个安装包(Visual Studio 安装程序)。在安装过程中,我使用 SMO 将数据库附加到 MS Sql 服务器。卸载过程开始时,会出现对话框“应在继续安装之前关闭以下应用程序(“SQL 服务器(MSSQLServer)”)”。该对话框有两个选项“自动关闭应用程序并在设置完成后尝试重新启动它们”和“不要关闭应用程序(可能需要重新启动)”。如果我选择第一个选项,我会看到错误“无法在服务器上连接”。使用第二个选项一切正常。在我的自定义操作的 unistall 方法中,我使用 SqlCommand(命令文本:DROP DATABASE [baseName])来删除数据库。卸载方法代码:
using(var con=new SqlConnection(_server.ConnectionContext.ConnectionString))
{
con.Open();
string sqlCommandText = string.Format("DROP DATABASE [{0}]", DATABASE_NAME);
var sqlCommand = new SqlCommand(sqlCommandText, con);
sqlCommand.ExecuteNonQuery();
}
如何避免对话框“以下应用程序...”并始终使用第二个选项?或者也许我还有其他方法可以删除数据库?