<asp: BoundField DataField= "ConditionName" HeaderText= "Состояние заказа" />
…………………………………………………………………….
<asp: BoundField DataField= "TotalPrice" DataFormatString={0:c} HtmlEncode= "false" HeaderText= "Цена"/>
…………………
<ItemTemplate>
<asp: HyperLink ID= "OrderDetailsHyperLink" Text= "Подробности" NavigateUrl='<%# "~/ProtectedPages/HistoryOrderDetails.aspx? OrderID=" + …………………………….
runat= "server" CssClass= "GridViewLink"></asp: HyperLink>
</ItemTemplate>
<ItemStyle Width= "100" />
……………………….
</Columns>
</asp: GridView>
Для доступа к базе данных используется компонент доступа к данным - OrdersDB, для выборки данных - метод OrdersDB. GetOrdersByUser
public static DataSet GetOrdersByUser (Guid userID)
{
SqlConnection conn = new SqlConnection (WebConfigurationManager. ConnectionStrings ["connStr"].ConnectionString);
…………………………………………………………
cmd. CommandType = CommandType. StoredProcedure;
cmd. Parameters. Add ("UserId", SqlDbType. UniqueIdentifier);
cmd. Parameters ["UserId"].Value = userID;
………………………………………
SqlDataAdapter da = new SqlDataAdapter(cmd);
try
da. Fill(ds);
………….
}
catch (SqlException)
conn. Close();
return null;
Хранимая процедура GetOrdersByUser, находящаяся на сервере базы данных:
CREATE PROCEDURE GetOrdersByUser (@UserId UNIQUEIDENTIFIER) AS
SELECT OrderID, OrderDate, SendDate, ConditionName, TypePaymentName, TotalPrice FROM OrdersView
WHERE UserId = @UserId
ORDER BY OrderDate
GO
В файле кода web-страницы HistoryOrders.aspx.cs вызывается метод GetOrdersByUser класса OrdersDB:
MembershipUser _user = Membership. GetUser (User. Identity. Name);
DataSet ds = OrdersDB. GetOrdersByUser((Guid)_user. ProviderUserKey);
if (ds == null)
……………………………….
GridViewOrders. DataSource = ds;
GridViewOrders. DataBind();
Компонент доступа к данным вызывает хранимую процедуру на сервере базы данных, передавая в неё в качестве параметра код пользователя. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении, и если была обнаружена ошибка при взаимодействии с БД, то осуществляется переход на страницу информации об ошибке.
В результате на web-страницы будет изображена таблица, представленная на рисунке 6.
Рис. 6 "История заказов покупателя"
4. Проектирование компонентов web-приложения
4.1 Общая структура web-приложения
4.1.1 Структура каталогов
На рисунке 7 изображена полная структура каталогов разработанного web-приложения.
Рис. 7 лист 1 "Структура каталога web-приложения"
Рис. 7 лист 2 "Структура каталога web-приложения"
Подкаталог AdminProtectedPages содержит web-страницы (файлы дескрипторов.aspx и файлы кода.cs), доступные только аутентифицированным пользователям, чьи учётные записи относятся к роли Administrator. Подробнее о ролях рассмотрено в пункте №. 4.5.3
Назначение web-страниц подкаталога AdminProtectedPages:
· AddProduct.aspx - добавление новых альбомов в;
· AdminDefault.aspx - страница по умолчанию интерфейса администратор;
· ManagementArtist.aspx - добавление, удаление и редактирование информации об;
· ManagementGenre.aspx - добавление, удаление и редактирование информации о;
· AdminFAQ.aspx - просмотр и ответ на вопросы пользователей;
· ManagementTypeProduct.aspx - добавление, удаление и редактирование информации о;
· Orders.aspx - просмотр заказов;
· OrdersDetails.aspx - детали заказа, печать накладной заказа, изменение состояния выполнения заказа;
· UpdateDeleteProduct.aspx - редактирование и удаление данных об.
Подкаталог ImageAlbum содержит обложки музыкальных альбомов.
Подкаталог App_Code содержит файлы пользовательских классов:
В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении.
Подкаталог App_Theme содержит файл темы оформления и css-файл. (будут рассмотрены в пункте 4.2.3).
Подкаталог Images содержит изображения, используемые для оформления web-страниц.
Подкаталог MasterPages содержит файлы мастер-страниц, которые будут рассмотрены в пункте 4.2.1
Назначение web-страниц подкаталога MasterPages:
· UserMasterPage.master - мастер-страница интерфейса покупателя;
· AdminMasterPage.master - мастер-страница интерфейса администратора;
Подкаталог ProtectedPages содержит web-страницы (файлы дескрипторов.aspx и файлы кода.cs), доступные только аутентифицированным пользователям. Подробнее об аутентификации будет написано в пункте 4.5.2.
Назначение web-страниц подкаталога ProtectedPages:
· HistoryOrderDetails.aspx - подробности о;
· HistoryOrders.aspx - заказы покупателя;
· Order.aspx - оформление заказа;
· UserPersonalData.aspx - просмотр и редактирование личных данных покупателя, смена пароля, смена контрольного вопроса и ответа, управление подпиской;
Подкаталог UserControls, содержит файлы пользовательских элементов управления. Подробнее о пользовательских элементах управления написано в пункте 4.2.2.
Назначение пользовательских элементов управления:
· MenuAdmin.ascx - меню функций администратора;
· MenuAlphabet.ascx - алфавитное меню для поиска продукции по первой букве в названии;
· MenuGenres.ascx - панель поиска продукции по музыкальным жанрам;
· MenuUser.ascx - навигационная панель, отображает разные ссылки в завасимости от того аутентифицирован пользователь или нет, и к какой роли принадлежит его учётная запись;
· OrderSearch.ascx - панель поиска заказов;
· RandomAlbum.ascx - отображает случайный альбом из каталога;
· ShopInfo.ascx - навигационная панель;
В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении
Страницы, находящиеся в корневом каталоге web-приложения доступны всем пользователям.
Назначение web-страниц корневого каталога:
· AddQuestion.aspx - добавление вопроса администрации магазина;
· CatalogList.aspx - отображает список альбомов в зависимости от указанных критериев поиска;
· Default.aspx - страница по;
· ErrorPage.aspx - отображается при ошибке работы с;
· FAQ.aspx - отображает вопросы покупателей и;
· InfoShop.aspx - информация по работе Интернет-магазина;
· TypePayment.aspx - информация о способах оплаты;
· Login.aspx - страница входа в Интернет-магазин (аутентификация и авторизация);
· PasswordRecovery.aspx - восстановление пароля;
· ProductDetails.aspx - отображает подробности о выбранном альбоме, добавление отзывов об альбоме;
· Registration.aspx - страница регистрации;
· Responses.aspx - отображает отзывы покупателей о выбранном альбоме;
· ShoppingCart.aspx - отображает товары, находящиеся в покупательской корзине;
Также в корневом каталоге находится конфигурационный файл web.config и файл обработчиков глобальных событий web-приложения. Подробнее о назначении этих файлов описано в пункте 4.1.2.
4.1.2 Файл конфигурации web-приложения web.config
Файл web.config является xml-файлом, позволяющий задавать различные настройки web-приложения, такие как методы аутентификации и авторизации пользователей, настройка системы профилей, управление доступа к каталогам, строки подключения к источникам данных и многие другие.
Всё содержимое конфигурационного файла вкладывается в корневой элемент <configuration>. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении:
· Строка подключения к БД
<connectionStrings>
<add name= "connStr"
connectionString="Data Source=localhost; Integrated
……………………………………………………….
providerName= "System. Data. SqlClient"/>
</connectionStrings>
· Конфигурация интерфейса MemberShip API, подробнее о котором написано в пункте 4.5.1.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17