MembershipUser.IsOnline Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un valore che indica se l'utente è attualmente online.
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
Valore della proprietà
true
se l'utente è online. In caso contrario, false
.
Eccezioni
Questo metodo non è disponibile. Ciò può verificarsi se l'applicazione è destinata al profilo client .NET Framework 4. Per evitare questa eccezione, eseguire l'override del metodo o modificare l'applicazione in modo che usi la versione completa di .NET Framework come destinazione.
Esempio
Nell'esempio di codice seguente vengono visualizzati tutti i nomi utente di appartenenza in un ListBox controllo e vengono usate etichette per visualizzare informazioni di appartenenza specifiche per il nome utente selezionato, incluso il IsOnline valore della proprietà per l'utente di appartenenza.
<%@ 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>
Commenti
Un utente viene considerato online se la data e l'ora correnti meno il valore della UserIsOnlineTimeWindow proprietà è precedente a quello LastActivityDate dell'utente.
L'oggetto LastActivityDate per un utente viene aggiornato alla data e all'ora correnti dei metodi e ValidateUser può essere aggiornato da CreateUserUpdateUser alcuni degli overload del GetUser metodo.
Nota
Il LastActivityDate valore della proprietà per un utente viene aggiornato dalle classi negli System.Web.Profile spazi dei nomi e System.Web.UI.WebControls.WebParts ogni volta che i dati utente vengono recuperati o impostati nell'origine dati. Se l'applicazione usa la stessa origine dati per archiviare le informazioni utente e l'utente e vengono configurati con la stessa applicationName
proprietà dell'utente, le LastActivityDate proprietà e PersonalizationProviderProfileProviderIsOnline dell'utente rifletteranno questo comportamento.MembershipProvider