Анализ предметной области. Проектирование базы данных и ее реализация. Проектирование правил целостности базы данных. Анализ реляционной модели. Примеры экранных форм интерфейса. Программный код, содержащий функции взаимодействия с базой данных.
Проектирование базы данных 2.1. Программная реализация 4.1 ADO .NET и Entity Framework 4.2 Примеры экранных форм интерфейса Литература Приложение 1. БД должна выполнять следующие задачи: · Формировать список заявок от различных пользователей, содержащих достаточную для системы информацию касающуюся самого пользователя (учебного заведения), набора его направлений. Исходные данные для выполнения курсового проекта Среда реализации: Microsoft Visual Studio 2010; СУБД: Microsoft SQL; Сервер ASP.NET MVC, .Net 4.0 IIS; Интерфейс работы с БД: Entity Framework, LinQ; Среда проектирования БД: Allfusion ERWin. Сокращения БД - база данных 3НФ - третья нормальная форма СУБД - система управления базами данных ФЗ - функциональная зависимость ФИС ЕГЭ и приёма, система - Федеральная информационная служба Рособрнадзора о проведении Единого Государственного Экзамена и порядка приёма. Описание атрибутов таблицы «Комментарий»: Номер комментария - целое число, ненулевой тип, ключевой параметр, Номер направления - целое число, ненулевой тип, является внешним ключом (атрибут таблицы Заявка - Номер направления), Номер института - целое число, ненулевой тип, является внешним ключом (атрибут таблицы Заявка - Номер заявки), Комментатор - строка, ненулевая, Комментарий - строка, необязательный атрибут, Дата добавления комментария - дата, необязательный тип. 2.2 Проектирование правил целостности БД Поле Правило целостности Действие Может принимать только значения ADD или ‘DEL’ Статус Может принимать только значения A, D или W Номер направления Больше нуля Номер комментария Больше нуля Номер заявки Больше нуля Тип приёма набора Число от 1 до 10 Все поля типа Date Не ранее 01.01.2013 2.3 Анализ реляционной модели Рис. 2.2 Реляционная модель БД Для получения хороших характеристик работы с БД, она должна находиться в 3НФ. Программный код, содержащий функции взаимодействия с БД Контроллёры - пользователь ОУ: [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public AjaxResultModel RequestDisabled() { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return new AjaxResultModel { Data = (dbContext.RequestDirection.Any(x => x.Activity == A)) }; } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult CancelRequest(string directionID) { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { int dir = Convert.ToInt32(directionID); //IQueryable tlist = dbContext.Request.Where(x => x.InstitutionID == InstitutionID).Select(x => x.ID_Request); RequestDirection toCancel = dbContext.RequestDirection.Where(x => x.Direction_ID == dir && x.Request_ID == InstitutionID).First(); if (toCancel.Activity == W) { dbContext.DeleteObject(toCancel); dbContext.SaveChanges(); // TODO: Finish Comment Deleting return new AjaxResultModel(); } else return new AjaxResultModel(Данное направление в данный момент обрабатывается администратором.); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult AllowedDirectionsGetAvailableEdu(AllowedDirectionAddViewModel model) { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return dbContext.GetRemainedAvailableAllowedDirections(model, InstitutionID); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult AllowedDirectionsGetExistingEdu(AllowedDirectionAddViewModel model) { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return dbContext.GetAllowedDirections(model, InstitutionID); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult RequestDirectionListDenied() { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return dbContext.GetDeniedDirections(InstitutionID); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult ClearAllDenied() { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return dbContext.DeleteDenied(InstitutionID); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult AllowedDirectionsDeleteEdu() { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { var model = dbContext.FillAllowedDirectionAddModel(); return PartialView(Admission/DeleteAllowedDirectionEdu, model); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult RequestDirectionListToAdd() { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return dbContext.GetRequestedToAddDirections(InstitutionID); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult RequestDirectionListToDelete() { using (InstitutionsEntities dbContext = new InstitutionsEntities()) { return dbContext.GetRequestedToDeleteDirections(InstitutionID); } } [HttpPost] [Authorize(Roles = UserRole.EduAdmin)] public ActionResult DeleteDirectionRequest(int? directionid, string comment, int? admissiontype) { int DirID = directionid ?? 0; int AdType = admissiontype ?? 0; if (DirID == 0) return new AjaxResultModel(); if (AdType == 0) return new AjaxResultModel(); using (Instituti
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы