Веб-сайты рассчитаны на повторные посещения пользователей. Персонализация позволяет веб-сайту запоминать идентификационные данные пользователя и другую информацию, а также обеспечивает персональный контекст для каждого пользователя.
ASP.NET предоставляет услуги по персонализации веб-сайта в соответствии со вкусами и предпочтениями конкретных клиентов.
Службы персонализации ASP.NET основаны на профиле пользователя. Профиль пользователя определяет информацию, которую веб-сайт требует от пользователя. Например, имя, возраст, адрес, дата рождения и номер мобильного телефона.
Эта информация определяется в файле web.config приложения, и среда выполнения ASP.NET считывает и использует ее. Эту работу выполняет поставщик персонализации.
Профили пользователей, содержащиеся в пользовательских данных, хранятся в базе данных по умолчанию, созданной ASP.NET. Вы можете создать собственную базу данных для хранения файлов подписей. Определения данных профиля хранятся в файле конфигурации web.config.
Давайте создадим образец веб-сайта, на котором мы хотим, чтобы наше приложение запоминало данные пользователя, такие как имя, адрес, дата рождения и т. д. Добавьте сведения о профиле, используя элемент в файле web.config.
<configuration><system.web><profile> <properties> <add name="Name" type ="String"/> <add name="Birthday" type ="System.DateTime"/> <group name="Адрес" "> <add name="Street"/> <add name="City"/> <add name="State"/> <add name="Zipcode"/> </group> </properties></profile></system.web></configuration>
Если профиль определен в файле web.config, он доступен через атрибут Profile, найденный в текущем HttpContext и доступный на странице.
Добавьте текстовое поле для ввода данных пользователя, определенных в файле объекта, и кнопку для отправки данных:
Обновите Page_load для отображения информации о файле объектов:
использование системы; использование System.Data; использование System.Configuration; использование System.Web; использование System.Web.Security; использование System.Web.UI; использование System.Web.UI.WebControls; использование System.Web.UI.WebControls. WebParts; использование System.Web.UI.HtmlControls; общедоступный частичный класс _Default: System.Web.UI.Page { protected void Page_Load (отправитель объекта, 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;
Напишите следующий дескриптор для кнопки отправки и сохраните пользовательские данные в файле функций:
protected void btnsubmit_Click(отправитель объекта, EventArgs e) { ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); if (pc != null) { pc.Name = this.txtname.Text pc.Address.Street = this; .txtaddr.Text; pc.Address.City = this.txtcity.Text; this.txtstate.Text; pc.Address.Zipcode = this.txtzip.Text; pc.Birthday = this.Calendar1.SelectedDate; pc.Save();
При первом запуске страницы пользователю необходимо ввести информацию. Однако в следующий раз данные пользователя будут загружены автоматически.
Помимо атрибутов имени и типа, которые мы уже использовали, у элементов есть и другие атрибуты. В следующей таблице показаны некоторые из этих свойств:
свойство | описывать |
---|---|
имя | Название объекта недвижимости. |
тип | По умолчанию используется строковый тип, но в качестве типа данных допускается любое полное имя класса. |
сериализоватьAS | Формат, который будет использоваться при сериализации этого значения. |
только чтение | Значения файла подписи только для чтения не могут быть изменены. По умолчанию это свойство имеет значение false. |
значение по умолчанию | Значение по умолчанию, которое используется, если файл подписи не существует или не содержит информации. |
разрешить анонимный | Логическое значение, указывающее, можно ли использовать этот атрибут с анонимными файлами. |
Поставщик | Поставщик профиля, который следует использовать для управления этим свойством. |
Анонимная персонализация позволяет пользователям персонализировать веб-сайт до того, как идентифицировать себя. Например, Amazon.com позволяет пользователям добавлять товары в корзину перед входом в систему. Чтобы включить эту функцию, файл web.config можно настроить следующим образом:
<anonymousIdentification включена ="true" cookieName=".ASPXANONYMOUSUSER" cookieTimeout="120000" cookiePath="/" cookieRequiresSSL="false" cookieSlidingExpiration="true" cookieprotection="Encryption" Coolieless="UseDeviceProfile"/>