private void BtnExecuteCommand_OnClick(object sender, RoutedEventArgs e) { string strConn = string.Format("Data Source={0},{1};Initial Catalog={2};User Id={3};Password={4}" , "192.168.4.181", 1433, "UMPDataDB0319", "VCLogIMP", "imp_123"); string strSql = string.Format("delete from T_11_701_OL"); SubDebug(string.Format("Executing command...")); mWorker = new BackgroundWorker(); mWorker.DoWork += (s, de) => { OperationReturn optReturn = DBAccessHelper.ExecuteCommand(strConn, strSql); if (!optReturn.Result) { SubDebug(string.Format("Fail.\t{0}", optReturn)); } else { SubDebug(string.Format("End\t{0}", optReturn.IntValue)); } }; mWorker.RunWorkerCompleted += (s, re) => { mWorker.Dispose(); mWorker = null; }; mWorker.RunWorkerAsync(); }