示例#1
0
 private void Broadcaster(string text, ITestCallback callback, Uri to)
 {
     ThreadPool.QueueUserWorkItem(delegate
     {
         for (var ii = 0; ii < 10; ii++)
         {
             // action
             publisher(ii, text, callback, to);
         }
     });
 }
示例#2
0
        private void Broadcaster(string text, ITestCallback callback, Uri to)
        {
            ThreadPool.QueueUserWorkItem(delegate
            {
                for (var ii = 0; ii < 10; ii++)
                {
                    // action
                    publisher(ii, text, callback, to);                 
                }

            });
        }
示例#3
0
        public void Hello(string text)
        {
            Console.WriteLine("[server received] {0}", text);
            ITestCallback callback = OperationContext.Current.GetCallbackChannel <ITestCallback>();

            ThreadPool.QueueUserWorkItem(delegate
            {
                for (int i = 1; i <= 5; i++)
                {
                    callback.OnHello(text + ", " + i);
                }
            });
        }
示例#4
0
        private void publisher(int counter, string text, ITestCallback callback, Uri to)
        {
            ThreadPool.QueueUserWorkItem(delegate
            {
                Thread.Sleep(new Random(counter).Next(100, 1500));

                try
                {
                    using (var scope = new OperationContextScope((IContextChannel)callback))
                    {
                        OperationContext.Current.OutgoingMessageHeaders.To = to;
                        callback.PingCallback(string.Format("[{0}], {1}", counter, text));
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("\n" + ex.Message);
                }
            });
        }
示例#5
0
        private void publisher(int counter, string text, ITestCallback callback, Uri to)
        {
            ThreadPool.QueueUserWorkItem(delegate
            {
                Thread.Sleep(new Random(counter).Next(100, 1500));

                try
                {
                    using (var scope = new OperationContextScope((IContextChannel)callback))
                    {
                        OperationContext.Current.OutgoingMessageHeaders.To = to;
                        callback.PingCallback(string.Format("[{0}], {1}", counter, text));
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("\n" + ex.Message);
                }
            });
        }
示例#6
0
        public async Task AddTestimonial(int pid, int doc, string message, string time, ITestCallback callback)
        {
            if (DBHandler.db == null)
            {
                DBHandler.DBConnection();
            }
            try
            {
                await DBHandler.db.ExecuteAsync(String.Format("INSERT INTO TESTIMONIAL (PATIENT_ID,DOC_ID, MESSAGE, POSTED_TIME " +
                                                              ") VALUES({0},{1},'{2}','{3}')", pid, doc, message, time)
                                                );

                //System.Diagnostics.Debug.WriteLine("Appointment insert dao Success");
                await DBHandler.db.CloseAsync();

                callback.TestReadSuccess();
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("Testimonial insert dao exception=" + e.Message);
                callback.TestReadFail();
                return;
            }
        }
			public string TestClientCallbackInterface(string name, ITestCallback callback)
			{
				return callback.SayHello(name);
			}