MembershipUser.LastActivityDate プロパティ

定義

メンバーシップ ユーザーが最後に認証されたかアプリケーションにアクセスした日付と時刻を取得または設定します。

public:
 virtual property DateTime LastActivityDate { DateTime get(); void set(DateTime value); };
public virtual DateTime LastActivityDate { get; set; }
member this.LastActivityDate : DateTime with get, set
Public Overridable Property LastActivityDate As DateTime

プロパティ値

メンバーシップ ユーザーが最後に認証されたかアプリケーションにアクセスした日付と時刻。

次のコード例では、コントロール内のすべてのメンバーシップ ユーザー名を ListBox 表示し、ラベルを使用して、メンバーシップ ユーザーのプロパティ値など LastActivityDate 、選択したユーザー名の特定のメンバーシップ情報を表示します。

<%@ 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>

注釈

ユーザーの はLastActivityDate、 メソッドと ValidateUser メソッドによってCreateUser現在の日付と時刻に更新され、 メソッドのいくつかのGetUserオーバーロードによって更新できます。 メソッドを UpdateUser 使用して、 プロパティを LastActivityDate 特定の日付と時刻に設定できます。

LastActivityDateは、ユーザーがオンラインかどうかを判断するために使用されます。 現在の日付と時刻からプロパティ値を差し引いた値がユーザーの UserIsOnlineTimeWindow よりも前 LastActivityDate の場合、ユーザーはオンラインと見なされます。

SqlMembershipProviderCreationDateLastActivityDateLastLoginDate、および LastPasswordChangedDate の各日付を、 メソッドによってメンバーシップ ユーザーが作成されたときと同じ日時にCreateUser設定します。

注意

ユーザーの はLastActivityDate、ユーザー データがデータ ソースから取得または設定されるたびに、 および System.Web.UI.WebControls.WebParts 名前空間のクラスSystem.Web.Profileによって更新されます。 アプリケーションで同じデータ ソースを使用してユーザー情報を格納しProfileProvider、 と PersonalizationProvider が とLastActivityDateMembershipProvider同じ applicationName で構成されている場合、ユーザーの プロパティと IsOnline プロパティにはこの動作が反映されます。

適用対象

こちらもご覧ください