Skip to content

CRUD API with authentication for recipes-front. Have multi-layered architecture with Repositories and Unit of Work in DAL

Notifications You must be signed in to change notification settings

MalumDominum/RecipesApp

Repository files navigation

ASP .NET + EF Practice

There are 3 tasks:

  1. Introduction to the multilevel architecture of software systems
  2. Introduction to ASP .NET MVC technology (Which is made on the branch "MVC")
  3. Introduction to ASP .NET Web API technology (Which is made on the main branch)

Which I have to do based on such a subject area:

Restaurant. Formation of orders.

Dishes consist of ingredients. Dishes make a price list, which indicates the price for different portions of the dish. The order may include a set of several portions of different dishes. Functional requirements: compiling dishes and menus, forming orders.

Task given in my own language - Ukrainian and you can see them below

Introduction to the multilevel architecture of software systems

  1. Спроектувати та розробити програмну систему, що складається з трьох компонентів-рівнів багаторівневої архітектури. Розробити додатково модульні тести для тестування функціоналу системи.

  2. Перший компонент є рівнем доступу до даних (DAL). Джерелом даних обрати реляційну БД. Доступ до даних організувати, використовуючи Entity Framework code first. DAL організувати з викорістанням шаблону «Одиниця роботи», що поєднує декілька репозиторіїв відповідно до предметної області. Запис та читання даних виконується методами репозиторіів. Мова SQL у програмуванні DAL не використовується. Тип проекту – динамічна бібліотека.

  3. Другий компонент є рівнем біднес-логіки (BLL), в якій реалізовано функціонал (бізнес-логіку) програмної системи для предметної галузі згідно з варіантом. BLL посилається на DAL, щоб отримати доступ до репозиторіїв для запису та читання даних в БД. Тип проекту – динамічна бібліотека. Для забезпечення слабкої звязанності між рівнями використовуються IoC-контейнери.

  4. Третій компонент є рівнем представлення (PL) і включає інтерфейс програмної системи. В якості даного компоненту в поточній лабораторній роботі пропонується використати консольне чи графічне застосування. PL посилається на BLL, щоб отримати доступ до операцій бізнес-логіки при виконанні запита користувача: тобто методи рівня представлення, виконуючи запит, викликають певні методи сервісів рівня бізнес-логіки.

Introduction to ASP .NET MVC technology (Which is made on the branch "MVC")

У трирівневій програмній системі, архітектуру якої було розроблено за вказівками завдання 1, реалізувати презентаційний рівень (PL) з використанням Web-застосування ASP .Net MVC:

  1. створити контролери для звертання до функціоналу бізнес-логіки, щоб виконати запити користувача (наприклад, додати замовлення, створити рахунок до сплати, знайти книгу за певною назвою чи автором тощо);
  2. створити моделі для передачі за їх допомогою даних для відображення представленню чи отримання даних з форми у представленні для передачі їх певному методові дії контролера (замовлення, рахунок, книга, тощо);
  3. створити представлення, що відображують зміст Web-сторінок застосування (список замовлень, вміст замовлення, вміст рахунку, список книг, дані про книгу, тощо).

Introduction to ASP .NET Web API technology (Which is made on the main branch)

У трирівневій програмній системі, архітектуру якої було розроблено за вказівками завдання 1, реалізувати презентаційний рівень (PL) з використанням Web-застосування ASP .Net Web API:

  1. Cтворити контролери для звертання до функціоналу бізнес-логіки, щоб виконати запити користувача (додати замовлення, створити рахунок до сплати, знайти книгу за певною назвою чи автором тощо);
  2. Cтворити моделі для передачі за їх допомогою даних для відображення представленню чи отримання даних з форми у представленні для передачі їх певному методові дії контролера (замовлення, рахунок, книга, тощо); дані для представлення, що повертають методи Web API, мають бути .Net-типів, сумісних з форматом JSON.
  3. Додати та продемонструвати вбудований засіб документації help page чи swagger для створеного WEB-застосування.

About

CRUD API with authentication for recipes-front. Have multi-layered architecture with Repositories and Unit of Work in DAL

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages