PersonalizationAdministration Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt beheer- en beheerfunctionaliteit geïmplementeerd voor persoonlijke instellingen voor webonderdelen. Deze klasse kan niet worden overgenomen.
public ref class PersonalizationAdministration abstract sealed
public static class PersonalizationAdministration
type PersonalizationAdministration = class
Public Class PersonalizationAdministration
- Overname
-
PersonalizationAdministration
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u verschillende methoden in de PersonalizationAdministration klasse gebruikt. Dit voorbeeld bestaat uit een .aspx pagina die verwijst naar een gebruikersbeheer voor webonderdelen met de naam Persadmin.ascx. De volgende code bevat het .aspx-bestand voor het voorbeeld.
<%@ Page Language="C#" %>
<%@ Register TagPrefix="admin" TagName="administrator" Src="~/PersAdmin.ascx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:LoginName ID="LoginName1" runat="server" />
<asp:LoginStatus ID="LoginStatus1" runat="server" LogoutAction="RedirectToLoginPage" />
<br />
<br />
</div>
<asp:WebPartManager ID="WebPartManager1" runat="server"></asp:WebPartManager>
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<admin:administrator id="admincontrol" runat="server" />
</ZoneTemplate>
</asp:WebPartZone>
</form>
</body>
</html>
Deze code biedt het Persadmin.ascx besturingselement.
Important
Dit voorbeeld heeft een tekstvak dat gebruikersinvoer accepteert. Dit is een mogelijke beveiligingsrisico. Standaard valideren ASP.NET webpagina's dat gebruikersinvoer geen script- of HTML-elementen bevat. Zie Overzicht van Script Exploits voor meer informatie.
<%@ Control Language="C#" ClassName="PersAdmin" %>
<script runat="server">
WebPartManager _manager;
string _provider;
string _userscope;
void Page_Init(object sender, EventArgs e)
{
Page.InitComplete += new EventHandler(InitComplete);
}
void InitComplete(object sender, System.EventArgs e)
{
_manager = WebPartManager.GetCurrentWebPartManager(Page);
// <snippet4>
_provider = PersonalizationAdministration.Provider.Name;
TextBox1.Text = _provider;
// </snippet4>
// <snippet6>
if (_manager.Personalization.Scope == PersonalizationScope.Shared)
{
TextBox2.Text = "Shared Scope";
}
else
TextBox2.Text = "User Scope";
// </snippet6>
// <snippet5>
Label4.Visible = false;
TextBox4.Text = PersonalizationAdministration.GetCountOfState(PersonalizationScope.User).ToString();
// </snippet5>
}
// <snippet2>
protected void Button1_Click(object sender, EventArgs e)
{
if (TextBox3.Text != null)
{
// <snippet3>
PersonalizationStateInfoCollection findresult;
findresult = PersonalizationAdministration.FindUserState(null, TextBox3.Text);
if (findresult.Count != 0)
{
Label4.Text = findresult.Count + " user(s) found";
Label4.Visible = true;
}
// </snippet3>
else
{
Label4.Text = "No users found.";
Label4.Visible = true;
}
}
else
{
Label4.Text = "You must enter a user name to find.";
}
}
// </snippet2>
</script>
<asp:Label ID="Label1" runat="server" Text="Personalization Provider" Width="162px"
AssociatedControlID="TextBox1" />
<br />
<asp:TextBox ID="TextBox1" runat="server" Width="268px"></asp:TextBox>
<br />
<br />
<asp:Label ID="Label2" runat="server" Text="Scope" AssociatedControlID="TextBox2" />
<br />
<asp:TextBox ID="TextBox2" runat="server" Width="90px"></asp:TextBox>
<br />
<br />
<asp:Label ID="Label3" runat="server" Text="User to Find" Width="135px"
AssociatedControlID="TextBox3" />
<br />
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:Label ID="Label4" runat="server" Width="77px" ForeColor="Red" />
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Find User" OnClick="Button1_Click" />
<br />
<br />
<asp:Label ID="Label5" runat="server" Text="Personalization Statistics" Width="204px" />
<br />
<br />
<asp:Label ID="Label6" runat="server" Text="Number of User Personalization States" Width="246px"
AssociatedControlID="TextBox4" Height="21px" />
<br />
<asp:TextBox ID="TextBox4" runat="server" Width="63px"></asp:TextBox>
<br />
<br />
<br />
<br />
Opmerkingen
Deze klasse biedt verschillende statische methoden en eigenschappen die beheer- en beheerfunctionaliteit beschikbaar maken voor persoonlijke instellingen voor webonderdelen. Deze methoden zijn van toepassing op de standaardprovider voor persoonlijke instellingen die is geconfigureerd in het WebPartManager besturingselement voor een besturingselement voor webonderdelen. Als u verschillende gegevensarchieven wilt beheren die fungeren als personalisatieproviders, moet u de methoden voor de klassen van afzonderlijke personalisatieproviders rechtstreeks gebruiken. Houd er rekening mee dat de verzameling geconfigureerde personalisatieproviders voor een WebPartManager besturingselement beschikbaar is via de Providers statische eigenschap.
Het is belangrijk te weten dat persoonlijke instellingen mislukken als uw webtoepassing niet wordt uitgevoerd op het standaardvertrouwensniveau van Medium of hoger (u kunt aangepaste vertrouwensniveaus instellen in een Web.config bestand met behulp van het <trust level="" /> element). De PersonalizationAdministration en SqlPersonalizationProvider klassen controleren beide op een vertrouwensniveau van Low wanneer ze worden geïnitialiseerd. Als u uw toepassing configureert voor uitvoering op vertrouwensniveau van Low, en u gebruikt de standaardprovider SqlPersonalizationProvider om de persoonlijke gegevens voor uw toepassing te beheren. De eerste keer dat de toepassing toegang probeert te krijgen tot persoonlijke gegevens, mislukt dit omdat een ASP.NET werkproces dat wordt uitgevoerd in Low vertrouwensrelatie niet over de machtigingen beschikt die nodig zijn om de verschillende klassen in de System.Data.SqlClient-naamruimte aan te roepen.
Eigenschappen
| Name | Description |
|---|---|
| ApplicationName |
Hiermee haalt u de naam op van de toepassing die is opgegeven door de provider. |
| Provider |
Retourneert een exemplaar van de standaard-personalisatieprovider. |
| Providers |
Hiermee wordt een verzameling personalisatieproviders geretourneerd die zijn geïndexeerd op naam. |
Methoden
| Name | Description |
|---|---|
| FindInactiveUserState(String, String, DateTime, Int32, Int32, Int32) |
Retourneert een verzameling persoonlijke statusgegevens per gebruiker voor inactieve gebruikers, op basis van de opgegeven parameters. |
| FindInactiveUserState(String, String, DateTime) |
Retourneert een verzameling persoonlijke statusgegevens per gebruiker voor inactieve gebruikers, op basis van de opgegeven parameters. |
| FindSharedState(String, Int32, Int32, Int32) |
Retourneert een verzameling gedeelde persoonlijke statusgegevens op basis van de opgegeven parameters. |
| FindSharedState(String) |
Hiermee wordt een verzameling gedeelde persoonlijke statusgegevens geretourneerd op basis van het opgegeven pad. |
| FindUserState(String, String, Int32, Int32, Int32) |
Retourneert een verzameling persoonlijke statusgegevens per gebruiker op basis van de opgegeven parameters. |
| FindUserState(String, String) |
Retourneert een verzameling statusgegevens per gebruiker op basis van de gebruikersnaam en het paginapad. |
| GetAllInactiveUserState(DateTime, Int32, Int32, Int32) |
Retourneert een subset van alle persoonlijke statusinformatie per gebruiker die is gekoppeld aan inactieve gebruikers, op basis van de opgegeven parameters. |
| GetAllInactiveUserState(DateTime) |
Retourneert een verzameling van alle persoonlijke statusinformatie per gebruiker die is gekoppeld aan inactieve gebruikers, op basis van de opgegeven datum. |
| GetAllState(PersonalizationScope, Int32, Int32, Int32) |
Retourneert een subset van alle persoonlijke statusgegevens uit het onderliggende gegevensarchief, op basis van de opgegeven parameters. |
| GetAllState(PersonalizationScope) |
Retourneert een verzameling van alle persoonlijke statusgegevens uit het onderliggende gegevensarchief voor het aangevraagde personalisatiebereik. |
| GetCountOfInactiveUserState(DateTime) |
Retourneert een telling van de persoonlijke instellingen per gebruiker in het onderliggende gegevensarchief voor inactieve gebruikers, op basis van de opgegeven parameter. |
| GetCountOfInactiveUserState(String, DateTime) |
Retourneert een telling van de persoonlijke instellingen per gebruiker in het onderliggende gegevensarchief voor inactieve gebruikers, op basis van de opgegeven parameters. |
| GetCountOfState(PersonalizationScope, String) |
Retourneert een telling van de persoonlijke statusitems in het onderliggende gegevensarchief dat bestaat voor de opgegeven parameters. |
| GetCountOfState(PersonalizationScope) |
Retourneert een telling van de persoonlijke statusitems in het onderliggende gegevensarchief dat bestaat voor het opgegeven bereik. |
| GetCountOfUserState(String) |
Retourneert een telling van de persoonlijke statusitems in het onderliggende gegevensarchief dat bestaat voor de opgegeven gebruiker. |
| ResetAllState(PersonalizationScope) |
Hiermee stelt u alle persoonlijke gegevens in het onderliggende gegevensarchief opnieuw in door alle rijen te verwijderen die zijn gekoppeld aan het opgegeven bereik. |
| ResetInactiveUserState(DateTime) |
Hiermee stelt u alle persoonlijke statusgegevens per gebruiker opnieuw in het onderliggende gegevensarchief, op basis van de opgegeven parameter. |
| ResetInactiveUserState(String, DateTime) |
Hiermee stelt u alle statusgegevens per gebruiker in het onderliggende gegevensarchief opnieuw in voor inactieve gebruikers, op basis van de opgegeven parameters. |
| ResetSharedState(String) |
Hiermee wordt de gedeelde status opnieuw ingesteld in het onderliggende gegevensarchief voor het opgegeven pad. |
| ResetSharedState(String[]) |
Hiermee wordt de gedeelde status opnieuw ingesteld in het onderliggende gegevensarchief voor de opgegeven paden. |
| ResetState(PersonalizationStateInfoCollection) |
Hiermee stelt u persoonlijke gegevens in het onderliggende gegevensarchief opnieuw in op basis van de items in de verzameling. |
| ResetUserState(String, String) |
Stelt de status per gebruiker in het onderliggende gegevensarchief opnieuw in voor de opgegeven combinatie van gebruikersnaam en pad. |
| ResetUserState(String, String[]) |
Hiermee wordt de status per gebruiker opnieuw ingesteld in het onderliggende gegevensarchief voor de opgegeven pagina en gebruikers. |
| ResetUserState(String) |
Hiermee stelt u alle status per gebruiker in het onderliggende gegevensarchief voor het opgegeven pad opnieuw in. |
| ResetUserState(String[]) |
Hiermee stelt u alle status per gebruiker in het onderliggende gegevensarchief voor de opgegeven paden opnieuw in. |