Пример #1
0
 private static void IPCService_OnMessageRecieved(object sender, SingleonIPCService.MessageRecievedEventArgs e)
 {
     try
     {
         Console.WriteLine($"Message received from {e.Request.Header.ProcessID}: {e.Request.Header.MessageType}");
         if (e.Request.Header.MessageType == (int)MessageType.SUBSCRIBE)
         {
             var body = e.Request.GetBody <RegisterMessage>();
             Console.WriteLine($"Counter type: {body.Counter}");
             if (!_clientProcIds.ContainsKey(e.Request.Header.ProcessID))
             {
                 lock (_syncLock)
                 {
                     _clientProcIds[e.Request.Header.ProcessID] =
                         new Tuple <RequestMessageHeader, CounterType>(e.Request.Header, body.Counter);
                 }
             }
         }
         else
         {
             _clientProcIds.Remove(e.Request.Header.ProcessID);
         }
     }
     catch (Exception ex)
     {
         Trace.WriteLine(ex.Message);
     }
 }
Пример #2
0
        private static void Instance_OnMessageRecieved(object sender, SingleonIPCService.MessageRecievedEventArgs e)
        {
            var id        = e.Request.Header.ProcessID;
            var startTime = DateTime.Now;

            Trace.WriteLine($"Message: {id} recieved: {startTime}");
            using (SqlConnection connection = new SqlConnection($"Data Source={serverName}; Initial Catalog = AWD; User ID = {username}; Password = {password}; "))
            {
                var        query     = e.Request.GetBody <string>();
                SqlCommand dbCommand = new SqlCommand(query, connection);
                connection.Open();
                var reader  = dbCommand.ExecuteReader();
                var dataset = dataReaderToData(reader);
                e.Response.SetBody <DataSet>(dataset);
            }
            Trace.WriteLine($"Message: {id} finished: {(DateTime.Now - startTime).TotalMilliseconds}");
        }