PersonalizationAdministration Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Implementuje funkce správy a správy pro přizpůsobení webových částí. Tato třída se nemůže dědit.
public ref class PersonalizationAdministration abstract sealed
public static class PersonalizationAdministration
type PersonalizationAdministration = class
Public Class PersonalizationAdministration
- Dědičnost
-
PersonalizationAdministration
Příklady
Následující příklad kódu ukazuje, jak použít několik metod ve PersonalizationAdministration třídě . Tento příklad se skládá z .aspx stránky, která odkazuje na uživatelský ovládací prvek webových částí s názvem Persadmin.ascx
. Následující kód poskytuje .aspx soubor pro příklad.
<%@ 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>
Tento kód poskytuje Persadmin.ascx
ovládací prvek.
Důležité
Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.
<%@ 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 />
Poznámky
Tato třída poskytuje několik statických metod a vlastností, které zpřístupňují funkce správy a správy pro přizpůsobení webových částí. Tyto metody platí pro výchozího zprostředkovatele přizpůsobení nakonfigurovaného v ovládacím WebPartManager prvku webových částí. Pokud potřebujete spravovat několik úložišť dat, která fungují jako zprostředkovatelé přizpůsobení, měli byste použít metody na jednotlivých třídách zprostředkovatelů přizpůsobení přímo. Všimněte si, že kolekce konfigurovaných zprostředkovatelů přizpůsobení pro WebPartManager ovládací prvek je k dispozici ze Providers statické vlastnosti.
Je důležité si uvědomit, že přizpůsobení selže, pokud vaše webová aplikace nebude spuštěna na výchozí úrovni důvěryhodnosti nebo Medium vyšší (vlastní úrovně důvěryhodnosti můžete nastavit v souboru Web.config pomocí elementu <trust level="" />
). Třídy PersonalizationAdministration a SqlPersonalizationProvider kontrolují úroveň Low důvěryhodnosti při inicializaci. Pokud nakonfigurujete aplikaci tak, aby běžela na úrovni Lowdůvěryhodnosti , a použijete výchozího SqlPersonalizationProvider zprostředkovatele ke správě dat přizpůsobení pro vaši aplikaci, při prvním pokusu aplikace o přístup k datům přizpůsobení se to nezdaří, protože pracovní proces ASP.NET spuštěný ve Low vztahu důvěryhodnosti nemá oprávnění potřebná k volání různých tříd v System.Data.SqlClient oboru názvů.
Vlastnosti
ApplicationName |
Získá nebo nastaví název aplikace určené zprostředkovatelem. |
Provider |
Vrátí instanci výchozího zprostředkovatele individuálního nastavení. |
Providers |
Vrátí kolekci zprostředkovatelů přizpůsobení indexovaných podle názvu. |
Metody
FindInactiveUserState(String, String, DateTime) |
Vrátí kolekci informací o stavu přizpůsobení jednotlivých uživatelů pro neaktivní uživatele na základě zadaných parametrů. |
FindInactiveUserState(String, String, DateTime, Int32, Int32, Int32) |
Vrátí kolekci informací o stavu přizpůsobení jednotlivých uživatelů pro neaktivní uživatele na základě zadaných parametrů. |
FindSharedState(String) |
Vrátí kolekci informací o stavu sdíleného přizpůsobení na základě zadané cesty. |
FindSharedState(String, Int32, Int32, Int32) |
Vrátí kolekci informací o stavu sdíleného přizpůsobení na základě zadaných parametrů. |
FindUserState(String, String) |
Vrátí kolekci informací o stavu přizpůsobení podle uživatele na základě uživatelského jména a cesty ke stránce. |
FindUserState(String, String, Int32, Int32, Int32) |
Vrátí kolekci informací o stavu přizpůsobení podle uživatele na základě zadaných parametrů. |
GetAllInactiveUserState(DateTime) |
Vrátí kolekci všech informací o stavu přizpůsobení podle uživatele přidružených k neaktivním uživatelům na základě zadaného data. |
GetAllInactiveUserState(DateTime, Int32, Int32, Int32) |
Vrátí podmnožinu všech informací o stavu přizpůsobení podle uživatele přidružených k neaktivním uživatelům na základě zadaných parametrů. |
GetAllState(PersonalizationScope) |
Vrátí kolekci všech informací o stavu přizpůsobení z podkladového úložiště dat pro požadovaný rozsah přizpůsobení. |
GetAllState(PersonalizationScope, Int32, Int32, Int32) |
Vrátí podmnožinu všech informací o stavu přizpůsobení z podkladového úložiště dat na základě zadaných parametrů. |
GetCountOfInactiveUserState(DateTime) |
Vrátí počet položek přizpůsobení podle uživatele v podkladovém úložišti dat pro neaktivní uživatele na základě zadaného parametru. |
GetCountOfInactiveUserState(String, DateTime) |
Vrátí počet položek přizpůsobení podle uživatele v podkladovém úložišti dat pro neaktivní uživatele na základě zadaných parametrů. |
GetCountOfState(PersonalizationScope) |
Vrátí počet položek stavu přizpůsobení v podkladovém úložišti dat, které existují pro zadaný obor. |
GetCountOfState(PersonalizationScope, String) |
Vrátí počet položek stavu přizpůsobení v podkladovém úložišti dat, které existují pro zadané parametry. |
GetCountOfUserState(String) |
Vrátí počet položek stavu přizpůsobení v podkladovém úložišti dat, které existují pro zadaného uživatele. |
ResetAllState(PersonalizationScope) |
Resetuje všechna data přizpůsobení v podkladovém úložišti dat odstraněním všech řádků přidružených k zadanému oboru. |
ResetInactiveUserState(DateTime) |
Na základě zadaného parametru resetuje všechny informace o stavu přizpůsobení jednotlivých uživatelů v podkladovém úložišti dat. |
ResetInactiveUserState(String, DateTime) |
Resetuje všechny informace o stavu jednotlivých uživatelů v podkladovém úložišti dat pro neaktivní uživatele na základě zadaných parametrů. |
ResetSharedState(String) |
Resetuje sdílený stav v podkladovém úložišti dat pro zadanou cestu. |
ResetSharedState(String[]) |
Resetuje sdílený stav v podkladovém úložišti dat pro zadané cesty. |
ResetState(PersonalizationStateInfoCollection) |
Resetuje data individuálního nastavení v podkladovém úložišti dat na základě položek obsažených v kolekci. |
ResetUserState(String) |
Resetuje veškerý stav jednotlivých uživatelů v podkladovém úložišti dat pro zadanou cestu. |
ResetUserState(String, String) |
Resetuje stav jednotlivých uživatelů v podkladovém úložišti dat pro zadanou kombinaci uživatelského jména a cesty. |
ResetUserState(String, String[]) |
Resetuje stav jednotlivých uživatelů v podkladovém úložišti dat pro stránku a zadané uživatele. |
ResetUserState(String[]) |
Resetuje všechny stavy jednotlivých uživatelů v podkladovém úložišti dat pro zadané cesty. |