Spec-Zone .ru
спецификации, руководства, описания, API

22.2.4.4. Учебное руководство: MySQL, Connector/Net ASP.NET Провайдер Профиля

Это учебное руководство показывает Вам, как использовать MySQL Profile Provider, чтобы хранить информацию профиля пользователя в базе данных MySQL. Учебное руководство использует MySQL, Connector/Net 6.1.1, MySQL Server 5.1 и Microsoft Visual Studio 2008 Professional Edition.

Много современных веб-сайтов позволяют пользователю создавать персональный профиль. Это требует существенного количества кода, но ASP.NET уменьшает это значительное включением функциональности в ее классах Профиля. Провайдер Профиля обеспечивает абстракцию между этими классами и источником данных. MySQL Profile Provider позволяет данным профиля быть сохраненными в базе данных MySQL. Это позволяет свойствам профиля быть записанными персистентному хранилищу, и быть полученными когда требующийся. Провайдер Профиля также позволяет данным профиля быть управляемыми эффективно, например это включает профилям, к которым не получили доступ начиная с определенной даты, которая будет удалена.

Следующие шаги показывают Вам, как можно выбрать MySQL Profile Provider.

  1. Создайте новое ASP.NET веб-проект.

  2. Выберите MySQL Website Configuration tool. Из-за ошибки в 6.1.1 Вам, вероятно, придется сначала соединиться с сервером в Проводнике Сервера прежде, чем значок инструмента выведет на экран на панели инструментов Проводника Решения.

  3. В MySQL Website Configuration tool перемещаются через инструмент к странице Профилей.

  4. Выберите MySQL Use, чтобы управлять моим флажком профилей.

  5. Установите флажок Autogenerate Schema.

  6. Щелкните по Редактированию... кнопка и сконфигурируйте строку подключения для базы данных, которая будет использоваться, чтобы хранить информацию профиля пользователя.

  7. Переместитесь к последней странице инструмента и щелкните по Finish, чтобы сохранить Ваши изменения и выйти из инструмента.

В этой точке Вы теперь готовы начать использовать MySQL Profile Provider. Со следующими шагами можно выполнить предварительный тест своей установки.

  1. Откройте Ваш web.config файл.

  2. Добавьте простой профиль, такой как следующее:

    <system.web>  <anonymousIdentification enabled="true"/>   <profile defaultProvider="MySQLProfileProvider">    ...    <properties>      <add name="Name" allowAnonymous="true"/>      <add name="Age" allowAnonymous="true" type="System.UInt16"/>      <group name="UI">        <add name="Color" allowAnonymous="true" defaultValue="Blue"/>        <add name="Style" allowAnonymous="true" defaultValue="Plain"/>      </group>    </properties>  </profile>  ...

    Отметьте это anonymousIdentification был установлен в истину. Это включает пользователям, которые не аутентифицировались, чтобы использовать профили. Они идентифицируются GUID в cookie, а не именем пользователя.

Теперь, когда простой профиль был определен в web.config, следующий шаг должен записать некоторый код, чтобы протестировать профиль.

  1. В Режиме конструктора разрабатывают простую страницу со следующими средствами управления:

    Рисунок 22.48. Простое Приложение Профиля

    Простое Приложение Профиля

    Они позволят пользователю вводить некоторую информацию о профиле. Пользователь может также использовать кнопки, чтобы сохранить их профиль, очистить страницу, и восстановить их данные профиля.

  2. В Коде Представление добавляют код следующим образом:

    ...protected void Page_Load(object sender, EventArgs e){    if (!IsPostBack)    {        TextBox1.Text = Profile.Name;        TextBox2.Text = Profile.Age.ToString();        Label1.Text = Profile.UI.Color;    }}    // Store Profileprotected void Button1_Click(object sender, EventArgs e){    Profile.Name = TextBox1.Text;    Profile.Age = UInt16.Parse(TextBox2.Text);}    // Clear Formprotected void Button2_Click(object sender, EventArgs e){    TextBox1.Text = "";    TextBox2.Text = "";    Label1.Text = "";}// Retrieve Profileprotected void Button3_Click(object sender, EventArgs e){    TextBox1.Text = Profile.Name;    TextBox2.Text = Profile.Age.ToString();    Label1.Text = Profile.UI.Color;}protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e){    Profile.UI.Color = DropDownList1.SelectedValue;}...
  3. Сохраните все файлы и создайте решение проверить, что никакие ошибки не были представлены.

  4. Запустите приложение.

  5. Введите свое имя, возраст и выберите цвет из поля списка. Теперь храните эту информацию в своем профиле, щелкая по Store Profile. Отметьте, что, если Вы не выбираете цвет из поля списка, Ваш профиль будет использовать цвет по умолчанию Blue это было определено в web.config файл.

  6. Щелкните по Clear Form к открытому тексту от текстовых полей и метки, которая выводит на экран Ваш выбранный цвет.

  7. Теперь щелкните по Retrieve Profile, чтобы восстановить Ваши данные профиля от базы данных MySQL.

  8. Теперь выйдите из браузера, чтобы завершить приложение.

  9. Запустите приложение снова. Отметьте, что, когда страница загружается, Ваша информация о профиле восстанавливается от базы данных MySQL.

В этом учебном руководстве Вы видели как к использованию MySQL Profile Provider с MySQL, Connector/Net.