ProfileBase.Properties Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft eine Auflistung von SettingsProperty-Objekten für jede Eigenschaft im Profil ab.
public:
static property System::Configuration::SettingsPropertyCollection ^ Properties { System::Configuration::SettingsPropertyCollection ^ get(); };
public static System.Configuration.SettingsPropertyCollection Properties { get; }
static member Properties : System.Configuration.SettingsPropertyCollection
Public Shared ReadOnly Property Properties As SettingsPropertyCollection
Eigenschaftswert
Eine SettingsPropertyCollection von SettingsProperty-Objekten für jede Eigenschaft im Profil für die Anwendung.
Ausnahmen
Ein im Abschnitt profile der Datei „Web.config“ angegebener Eigenschaftentyp konnte nicht erstellt werden.
- oder -
Das allowAnonymous
-Attribut für eine Eigenschaft im Abschnitt profile der Datei „Web.config“ ist auf true
festgelegt, und das enabled
-Attribut des <anonymousIdentification>-Elements ist auf false
festgelegt.
- oder -
Das serializeAs
-Attribut für eine Eigenschaft im Abschnitt profile der Datei „Web.config“ ist auf Binary festgelegt, und die IsSerializable-Eigenschaft vom angegebenen type
gibt false
zurück.
- oder -
Der mithilfe des provider
-Attributs einer Profileigenschaft angegebene Name eines Anbieters konnte nicht in der Providers-Auflistung gefunden werden.
- oder -
Der für eine Profileigenschaft angegebene type
konnte nicht gefunden werden.
- oder -
Es wurde eine Profileigenschaft mit einem Namen angegeben, der einem Eigenschaftennamen für die im inherits
-Attribut des Abschnitts profile angegebene Basisklasse entspricht.
Beispiele
Im folgenden Codebeispiel werden die Namen der Eigenschaften im Benutzerprofil aufgelistet, indem die Name Eigenschaft von der statischen Properties Auflistung von SettingsProperty Objekten an ein GridView Steuerelement gebunden wird. Der ausgewählte Eigenschaftswert wird anhand des Namens mithilfe der Item[] Auflistung abgerufen. Ein Beispiel für eine Web.config-Datei, die Eigenschaften für das Benutzerprofil angibt, finden Sie im Für die ProfileBase -Klasse bereitgestellten Beispiel.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Profile" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void Page_Load()
{
if (!IsPostBack)
{
PropertiesListBox.DataSource = ProfileBase.Properties;
PropertiesListBox.DataBind();
}
if (PropertiesListBox.SelectedItem != null)
{
object propValue = Profile[PropertiesListBox.SelectedItem.Text];
Type propType = propValue.GetType();
// If the property is a value type, return ToString().
if (propType == typeof(string) || propType.IsValueType)
{
ValueLabel.Visible = true;
ValueGridView.Visible = false;
ValueLabel.Text = propValue.ToString();
return;
}
// Bind the property to a GridView.
try
{
ValueGridView.DataSource = propValue;
ValueGridView.DataBind();
ValueGridView.Visible = true;
ValueLabel.Visible = false;
}
catch
{
// If the property is not bindable, return ToString().
ValueLabel.Visible = true;
ValueGridView.Visible = false;
ValueLabel.Text = propValue.ToString();
}
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Home Page</title>
</head>
<body>
<h3>View Profile properties:</h3>
<form id="form1" runat="server">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>Property</td>
<td>Value</td>
</tr>
<tr>
<td valign="top">
<asp:ListBox runat="server" id="PropertiesListBox" Rows="10" AutoPostBack="True" DataTextField="Name" />
</td>
<td valign="top">
<asp:GridView runat="Server" id="ValueGridView" Visible="False" />
<asp:Label runat="Server" id="ValueLabel" Visible="False" />
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Profile" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Sub Page_Load()
If Not IsPostBack Then
PropertiesListBox.DataSource = ProfileBase.Properties
PropertiesListBox.DataBind()
End If
If Not PropertiesListBox.SelectedItem Is Nothing Then
Dim propValue As Object = Profile(PropertiesListBox.SelectedItem.Text)
Dim propType As Type = propValue.GetType()
' If the property is a value type, return ToString().
If propType Is GetType(String) Or propType.IsValueType Then
ValueLabel.Visible = True
ValueGridView.Visible = False
ValueLabel.Text = propValue.ToString()
Return
End If
' Bind the property to a GridView.
Try
ValueGridView.DataSource = propValue
ValueGridView.DataBind()
ValueGridView.Visible = True
ValueLabel.Visible = False
Catch
' If the property is not bindable, return ToString().
ValueLabel.Visible = True
ValueGridView.Visible = False
ValueLabel.Text = propValue.ToString()
End Try
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Home Page</title>
</head>
<body>
<h3>View Profile properties:</h3>
<form id="form1" runat="server">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>Property</td>
<td>Value</td>
</tr>
<tr>
<td valign="top">
<asp:ListBox runat="server" id="PropertiesListBox" Rows="10" AutoPostBack="True" DataTextField="Name" />
</td>
<td valign="top">
<asp:GridView runat="Server" id="ValueGridView" Visible="False" />
<asp:Label runat="Server" id="ValueLabel" Visible="False" />
</td>
</tr>
</table>
</form>
</body>
</html>
Hinweise
Sie können diese Eigenschaft verwenden, um Informationen zu den Profileigenschaften abzurufen, die für eine Anwendung konfiguriert sind, einschließlich Eigenschaftennamen und -typen. Sie können auch auf die ProfileProvider der einzelnen Eigenschaften verweisen. Ein ProfileProvider verwaltet das Speichern und Abrufen von Eigenschaftswerten in und aus der Datenquelle.