다음을 통해 공유


MembershipUser.IsOnline 속성

정의

사용자가 현재 온라인 상태인지 여부를 가져옵니다.

public:
 property bool IsOnline { bool get(); };
public:
 virtual property bool IsOnline { bool get(); };
public bool IsOnline { get; }
public virtual bool IsOnline { get; }
member this.IsOnline : bool
Public ReadOnly Property IsOnline As Boolean
Public Overridable ReadOnly Property IsOnline As Boolean

속성 값

사용자가 온라인 상태이면 true이고, 그렇지 않으면 false입니다.

예외

이 메서드는 사용할 수 없습니다. 애플리케이션이 .NET Framework 4 클라이언트 프로필을 대상으로 하는 경우 이 문제가 발생할 수 있습니다. 이 예외를 방지하려면 메서드를 재정의하거나 전체 버전의 .NET Framework를 대상으로 하도록 애플리케이션을 변경합니다.

예제

다음 코드 예제에서는 컨트롤의 ListBox 모든 멤버 자격 사용자 이름을 표시 하 고 레이블을 사용 하 여 멤버 자격 사용자에 대 한 속성 값을 포함 하 여 IsOnline 선택한 사용자 이름에 대 한 특정 멤버 자격 정보를 표시 합니다.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

MembershipUserCollection users;

public void Page_Load()
{
  users = Membership.GetAllUsers();

  if (!IsPostBack)
  {
    // Bind users to ListBox.
    UsersListBox.DataSource = users;
    UsersListBox.DataBind();
  }


  // If a user is selected, show the properties for the selected user.

  if (UsersListBox.SelectedItem != null)
  {
    MembershipUser u = users[UsersListBox.SelectedItem.Value];

    EmailLabel.Text = u.Email;
    IsOnlineLabel.Text = u.IsOnline.ToString();
    LastLoginDateLabel.Text = u.LastLoginDate.ToString();
    CreationDateLabel.Text = u.CreationDate.ToString();
    LastActivityDateLabel.Text = u.LastActivityDate.ToString();
  }
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: View User Information</title>
</head>
<body>

<form runat="server" id="PageForm">

  <h3>View User Information</h3>

  <table border="0" cellspacing="4">
    <tr>
      <td valign="top">
        <asp:ListBox id="UsersListBox" DataTextField="Username" 
                     Rows="8" AutoPostBack="true" runat="server" />
      </td>
      <td valign="top">
        <table border="0" cellpadding="2" cellspacing="0">
          <tr>
           <td>Email:</td>
           <td><asp:Label runat="server" id="EmailLabel" /></td>
          </tr>
          <tr>
           <td>Is Online?:</td>
           <td><asp:Label runat="server" id="IsOnlineLabel" /></td>
          </tr>
          <tr>
           <td>LastLoginDate:</td>
           <td><asp:Label runat="server" id="LastLoginDateLabel" /></td>
          </tr>
          <tr>
           <td>CreationDate:</td>
           <td><asp:Label runat="server" id="CreationDateLabel" /></td>
          </tr>
          <tr>
           <td>LastActivityDate:</td>
           <td><asp:Label runat="server" id="LastActivityDateLabel" /></td>
          </tr>
        </table>
      </td>
    </tr>
  </table>

</form>

</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Dim users As MembershipUserCollection

Public Sub Page_Load()
  users = Membership.GetAllUsers()

  If Not IsPostBack Then
    ' Bind users to ListBox.
    UsersListBox.DataSource = users
    UsersListBox.DataBind()
  End If


  ' If a user is selected, show the properties for the selected user.

  If Not UsersListBox.SelectedItem Is Nothing Then
    Dim u As MembershipUser = users(UsersListBox.SelectedItem.Value)

    EmailLabel.Text = u.Email
    IsOnlineLabel.Text = u.IsOnline.ToString()
    LastLoginDateLabel.Text = u.LastLoginDate.ToString()
    CreationDateLabel.Text = u.CreationDate.ToString()
    LastActivityDateLabel.Text = u.LastActivityDate.ToString()
  End If
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: View User Information</title>
</head>
<body>

<form runat="server" id="PageForm">

  <h3>View User Information</h3>

  <table border="0" cellspacing="4">
    <tr>
      <td valign="top">
        <asp:ListBox id="UsersListBox" DataTextField="Username" 
                     Rows="8" AutoPostBack="true" runat="server" />
      </td>
      <td valign="top">
        <table border="0" cellpadding="2" cellspacing="0">
          <tr>
           <td>Email:</td>
           <td><asp:Label runat="server" id="EmailLabel" /></td>
          </tr>
          <tr>
           <td>Is Online?:</td>
           <td><asp:Label runat="server" id="IsOnlineLabel" /></td>
          </tr>
          <tr>
           <td>LastLoginDate:</td>
           <td><asp:Label runat="server" id="LastLoginDateLabel" /></td>
          </tr>
          <tr>
           <td>CreationDate:</td>
           <td><asp:Label runat="server" id="CreationDateLabel" /></td>
          </tr>
          <tr>
           <td>LastActivityDate:</td>
           <td><asp:Label runat="server" id="LastActivityDateLabel" /></td>
          </tr>
        </table>
      </td>
    </tr>
  </table>

</form>

</body>
</html>

설명

현재 날짜와 시간을 뺀 UserIsOnlineTimeWindow 속성 값 LastActivityDate 이 사용자의 이전인 경우 사용자는 온라인 상태로 간주됩니다.

LastActivityDate 사용자의 은 , UpdateUser 및 메서드에 의해 CreateUser현재 날짜 및 ValidateUser 시간으로 업데이트되며 메서드의 GetUser 일부 오버로드에서 업데이트할 수 있습니다.

참고

사용자에 대한 속성 값은 LastActivityDate 데이터 원본에서 System.Web.Profile 사용자 데이터를 검색하거나 설정할 때마다 및 System.Web.UI.WebControls.WebParts 네임스페이스의 클래스에 의해 업데이트됩니다. 애플리케이션이 동일한 데이터 소스를 사용 하 여 사용자 정보를 저장 하는 경우 및 ProfileProviderPersonalizationProvider 구성 된 동일한 applicationName 으로 프로그램 MembershipProvider, 해당 LastActivityDateIsOnline 사용자의 속성은 이 동작을 반영 합니다.

적용 대상

추가 정보