Websites sind für wiederholte Besuche von Benutzern konzipiert. Durch die Personalisierung kann sich eine Website die Benutzeridentifikation und andere Informationsdetails merken und jedem Benutzer einen persönlichen Kontext bieten.
ASP.NET bietet Dienste zur Personalisierung einer Website, um sie an den Geschmack und die Vorlieben bestimmter Kunden anzupassen.
ASP.NET-Personalisierungsdienste basieren auf dem Profil des Benutzers. Das Benutzerprofil definiert die Informationen, die die Website vom Benutzer benötigt. Zum Beispiel Name, Alter, Adresse, Geburtsdatum und Mobiltelefonnummer.
Diese Informationen sind in der web.config-Datei der Anwendung definiert und werden von der ASP.NET-Laufzeitumgebung gelesen und verwendet. Diese Arbeit übernimmt der Personalisierungsanbieter.
Die in den Benutzerdaten enthaltenen Benutzerprofile werden in der von ASP.NET erstellten Standarddatenbank gespeichert. Sie können Ihre eigene Datenbank zum Speichern von Signaturdateien erstellen. Profildatendefinitionen werden in der Konfigurationsdatei web.config gespeichert.
Lassen Sie uns eine Beispielwebsite erstellen, auf der unsere Anwendung Benutzerdaten wie Name, Adresse, Geburtsdatum usw. speichern soll. Fügen Sie Profildetails mithilfe des Elements in der Datei web.config hinzu.
<configuration><system.web><profile> <properties> <add name="Name" type ="String"/> <add name="Birthday" type ="System.DateTime"/> <group name="Address "> <add name="Street"/> <add name="City"/> <add name="State"/> <add name="Postleitzahl"/> </group> </properties></profile></system.web></configuration>
Wenn ein Profil in der Datei web.config definiert ist, ist das Profil über das Profilattribut im aktuellen HttpContext und über die Seite verfügbar.
Fügen Sie ein Textfeld zum Erfassen der in der Feature-Datei definierten Benutzereingaben und eine Schaltfläche zum Senden der Daten hinzu:
Aktualisieren Sie Page_load, um Informationen zur Funktionsdatei anzuzeigen:
unter Verwendung von System; unter Verwendung von System.Data; unter Verwendung von System.Configuration; unter Verwendung von System.Web; unter Verwendung von System.Web.Security; unter Verwendung von System.Web.UI; unter Verwendung von System.Web.UI.WebControls; unter Verwendung von System.Web.UI.WebControls. WebParts;using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) { ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); if (pc != null) { this.txtname.Text = pc.Name; this.txtaddr.Text = pc.Address.Street ; this.txtcity.Text = pc.Address.City; this.txtstate.Text = pc.Address.State; this.txtzip.Text = pc.Address.Zipcode; this.Calendar1.SelectedDate = pc.Birthday;
Schreiben Sie das folgende Handle für die Schaltfläche „Senden“ und speichern Sie die Benutzerdaten in der Feature-Datei:
protected void btnsubmit_Click(object sender, EventArgs e){ ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); if (pc != null) { pc.Name = this.txtname.Text = this .txtaddr.Text; pc.Address.City = this.txtcity.Text; pc.Address.State = this.txtstate.Text; pc.Address.Zipcode = this.txtzip.Text;
Wenn die Seite zum ersten Mal ausgeführt wird, muss der Benutzer Informationen eingeben. Beim nächsten Mal werden die Benutzerdaten jedoch automatisch geladen.
Zusätzlich zu den Namens- und Typattributen, die wir bereits verwendet haben, verfügen Elemente über weitere Attribute. Die folgende Tabelle zeigt einige dieser Eigenschaften:
Eigentum | beschreiben |
---|---|
Name | Der Name der Eigenschaft. |
Typ | Der Typ ist standardmäßig „string“, erlaubt jedoch jeden vollständigen Klassennamen als Datentyp. |
serializeAS | Das Format, das bei der Serialisierung dieses Werts verwendet werden soll. |
schreibgeschützt | Werte der schreibgeschützten Signaturdatei können nicht geändert werden. Diese Eigenschaft ist standardmäßig auf „false“ gesetzt. |
Standardwert | Ein Standardwert, der verwendet wird, wenn die Signaturdatei nicht vorhanden ist oder keine Informationen enthält. |
erlaubenAnonymous | Ein boolescher Wert, der angibt, ob dieses Attribut mit anonymen Dateien verwendet werden kann. |
Anbieter | Der Profilanbieter, der zum Verwalten dieser Eigenschaft verwendet werden soll. |
Durch die anonyme Personalisierung können Benutzer eine Website personalisieren, bevor sie sich identifizieren. Bei Amazon.com können Benutzer beispielsweise Artikel in ihren Warenkorb legen, bevor sie sich anmelden. Um diese Funktion zu aktivieren, kann die web.config-Datei wie folgt konfiguriert werden:
<anonymousIdentification aktiviert ="true" cookieName=".ASPXANONYMOUSUSER" cookieTimeout="120000" cookiePath="/" cookieRequiresSSL="false" cookieSlidingExpiration="true" cookieprotection="Encryption" coolieless="UseDeviceProfile"/>