public void Init(string ClientCode, string DbName) { Data.DBConnection dbConn = Data.DBConfig.GetDBConnection(ClientCode, DbName); CurrentClient.Disconnected += CurrentClient_Disconnected; DataAdapterClient adaClient = new DataAdapterClient(CurrentClient); dictClient[CurrentClient.ClientId] = adaClient; }
void LogClientTransaction(string TransID) { if (TransID.Length == 0) { return; } DataAdapterClient adaClient = dictClient[CurrentClient.ClientId]; if (!adaClient.TransList.Contains(TransID)) { adaClient.TransList.Add(TransID); } }
void CurrentClient_Disconnected(object sender, EventArgs e) { var client = (IServiceClient)sender; DataAdapterClient adaClient = dictClient[client.ClientId]; client.Disconnected -= CurrentClient_Disconnected; string TransID; for (int i = 0; i < adaClient.TransList.Count; i++) { TransID = adaClient.TransList[i]; IDataClient idc = GetTransClient(TransID); if (idc != null) { idc.RollbackTransaction(TransID); } } dictClient.Remove(client.ClientId); }