MembershipUser.IsOnline 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得使用者是否目前在線上。
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 由 CreateUser、 UpdateUser 和 ValidateUser 方法更新為目前的日期和時間,而且可由 方法的 GetUser 一些多載更新。
注意
LastActivityDate每當從數據源擷取或設定用戶數據時,和 System.Web.UI.WebControls.WebParts 命名空間中的System.Web.Profile類別都會更新使用者的屬性值。 如果您的應用程式使用相同的數據源來儲存使用者資訊,且您的 ProfileProvider 和 PersonalizationProvider 設定方式與相同applicationName
MembershipProvider,則LastActivityDate使用者的和 IsOnline 屬性會反映此行為。