Ejemplo n.º 1
0
 /// <summary>
 /// Start a new session
 /// </summary>
 /// <param name="clientInfo">The client information regarding the current session.</param>
 /// <returns></returns>
 public static Guid StartSession(SessionClientInfo clientInfo)
 {
     Guid sessionID = Guid.NewGuid();
     ISessionCallback callback = OperationContext.Current.GetCallbackChannel<ISessionCallback>();
     SessionInfo sessionInfo = new SessionInfo()
     {
         SessionID = sessionID,
         StartTime = DateTime.Now,
         LastActivityTime = DateTime.Now,
         ClientInfo = clientInfo
     };
     lock (_syncHelper)
     {
         CurrentSessionList.Add(sessionID, sessionInfo);
         CurrentCallbackList.Add(sessionID, callback);
     }
     return sessionID;
 }
        private void buttonStartSession_Click(object sender, EventArgs e)
        {
            string hostName = Dns.GetHostName();
            IPAddress[] ipAddressList = Dns.GetHostEntry(hostName).AddressList;
            string ipAddress = string.Empty;
            foreach (IPAddress address in ipAddressList)
            {
                if (address.AddressFamily == AddressFamily.InterNetwork)
                {
                    ipAddress += address.ToString() + ";";
                }
            }
            ipAddress = ipAddress.TrimEnd(";".ToCharArray());

            string userName = this.textBoxUserName.Text.Trim();
            if (string.IsNullOrEmpty(userName))
            {
                return;
            }

            SessionClientInfo clientInfo = new SessionClientInfo() { IPAddress = ipAddress, HostName = hostName, UserName = userName };
            SessionUtility.StartSession(clientInfo);
            this.groupBox2.Enabled = false;
        }
Ejemplo n.º 3
0
 public static void StartSession(SessionClientInfo clientInfo)
 {
     TimeSpan timeout;
     SessionID = Channel.StartSession(clientInfo, out timeout);
     Timeout = timeout;
 }
 public Guid StartSession(SessionClientInfo clientInfo, out TimeSpan timeout)
 {
     timeout = SessionManager.Timeout;
     return SessionManager.StartSession(clientInfo);
 }