Beispiel #1
0
        public static void InitDuplexServer()
        {
            var server = new DuplexServer(GetIpAddress());

            server.RegisterHandler <CustomEventData, string>((session, e) =>
            {
                Console.WriteLine(string.Concat("Server: ", e.FirstName));
                return("OK from Server");
            });
            server.RegisterHandler <string, string>((session, e) =>
            {
                Console.WriteLine(string.Concat("Server: ", e));
                return("OK from Server");
            });
            server.Start();

            var client = new DuplexClient(GetIpAddress());

            client.RegisterHandler <CustomEventData, string>((session, e) =>
            {
                Console.WriteLine(string.Concat("Client: ", e.FirstName));
                return("OK from Client");
            });
            client.RegisterHandler <string, string>((session, e) =>
            {
                Console.WriteLine(string.Concat("Client: ", e));
                return("OK from Client");
            });
            client.Connect();

            while (true)
            {
                var watch = new Stopwatch();
                watch.Start();

                var r1 = client.Send <CustomEventData, object>(new CustomEventData()
                {
                    FirstName = "Stefan",
                    LastName  = "Heim",
                    //Data = File.ReadAllBytes(@"c:\temp\Aktueller Mandant.pdf")
                });
                Console.WriteLine(string.Concat("Server response: ", r1));

                var r3 = client.Send <string, object>("Das ist ein Test");
                Console.WriteLine(string.Concat("Server response: ", r3));

                server.Send(new CustomEventData()
                {
                    FirstName = "Stefan",
                    LastName  = "Heim",
                    //Data = File.ReadAllBytes(@"c:\temp\Aktueller Mandant.pdf")
                });

                server.Send("Das ist ein Test");

                watch.Stop();
                Console.WriteLine(string.Concat(watch.ElapsedMilliseconds, "ms"));

                Console.ReadLine();
            }
        }