Asp.Net MVC Praktyczny Kurs

4.2 z 5
4.2
5 opinii

Asp.Net MVC Praktyczny Kurs – Aplikacja Sklepu Internetowego

Czego się nauczysz
   *  ASP NET MVC
   *  Entity Framework i podejście code first
   *  Inicjalizowania bazy danych
   *  Mechanizm migracji
   *  Glimps
   *  Cache
   *  Wywołań asynchronicznych AJAX
   *  Logowania i rejestracji użytkowników
   *  Mechanizm koszyka
   *  Elmach i Nlog
   *  Postal
   *  Hangfire
   *  Kontener DI (Dependency Injection)
   *  localDb
   *  Wersjonowania kodu Git
   *  Zarządzania projektem VisualStudio Online,

Wymagania

Podstawowa znajomość C#

Dla kogo jest ten kurs

  • Początkujący programiści ASP NET MVC
  • Początkujący programiści C#
  • Wszyscy chętni do dobrej zabawy z kodowaniem

Opis

Pokażę praktyczne zastosowanie technologii ASP.NET MVC. Zbuduję w pełni funkcjonalny sklep internetowy. W kursie będziemy korzystać z Visual Studio Comunity oraz wbudowanej bazy danych localDb. Skorzystamy również z systemu do wersjonowania kodu i zarządzania projektem VisualStudio Online, będziemy korzystać z Gita.

W 2 odcinku rozpoczniemy pracę nad naszym projektem w którym wykorzystamy Entity Framework i podejście code first. Dodamy EF do naszego projektu, utworzymy klasy naszego modelu na podstawie których zostanie wygenerowana baza danych. W 3 odcinku dodamy przykładowe dane do naszej aplikacji, gdyż w tej chwili nasza baza danych jest pusta. EF posiada mechanizm do inicjalizowania bazy danych jakimiś przykładowymi danymi, którymi zainicjalizujemy naszą bazę.

W 4 odcinku dodamy do naszego projektu mechanizm migracji. Ponieważ wtedy, kiedy będziemy mieć już do czynienia z systemem produkcyjnym w którym będą prawdziwe dane, nie będziemy chcieli aby jakiś inicjalizator wypełniał bazę jakimiś testowymi danymi i jeszcze za każdym razem gdy uruchamiasz aplikację usuwał bazę danych razem z danymi naszych klientów. W związku z tym aby umożliwić modyfikację modelu a co za tym idzie modyfikację bazy danych w taki sposób aby dane zapisane w bazie danych nie były tracone, usuwane został wprowadzony mechanizm migracji. Migracja to właśnie możliwość zaaplikowania pewnych zmian na schemacie bazy danych w taki sposób aby dane nie były usuwane.

Następnie dodamy Makietę – prototyp aplikacji do naszego projektu, wyodrębnimy części wspólne widoków do tzw. layoutu. Dodamy strony statyczne do naszej aplikacji. Dodamy trasy dla stron statycznych. Zainstalujemy Glimpsa. Oprogramujemy stronę główną naszej aplikacji, oprogramujemy stronę z kursami w wybranej kategorii, zrobimy widok pojedynczego kursu. Dodamy scieżkę nawigacyjną, dodamy Cache, pokażę jak zrealizować mechanizm filtrowania kursów oraz autopodpowiedzi przy użyciu javaScriptu i wywołań  asynchronicznych AJAX, oraz wykorzystamy JSONa. Zaimplementujemy mechanizm koszyka. Zrobimy widoki logowania i rejestracji użytkowników. Te 2 widoki będą oparte o bardzo podobna strukturę do widoku koszyka na zakupy który już zrobiliśmy. Do naszych widoków rejestracja użytkowników i logowanie użytkowników dodamy mechanizmy obsługujące logikę rejestracji  użytkowników i logowania użytkowników, i skorzystamy tutaj z gotowych wbudowanych mechanizmów w ASP dot net MVC takich jak  ASPNET identity.

Dodamy mechanizmy pozwalające wyświetlić użytkownikowi historię jego zamówień, a administratorowi listę wszystkich zamówień złożonych przez wszystkich użytkowników, dodamy funkcjonalność która będzie nam pozwalała dodać nowy kurs do naszego sklepu oraz edytować istniejące kursy. Dodamy do naszej aplikacji możliwość monitorowania błędów, żeby wiedzieć czy np. użytkownicy naszej aplikacji  nie spotykają się z jakimiś błędami na które powinniśmy zwrócić uwagę. Do logowania komunikatów i błędów mamy gotowe mechanizmy i niema potrzeby ani sensu tworzyć własnych. W naszej aplikacji skorzystamy z Elmach i Nlog.  Elmach po dołączeniu do projektu zaloguje nam wszystkie nie wyłapane błędy. Nlog da nam możliwość logowania dowolnych  komunikatów. Dodamy do naszej aplikacji możliwość wysyłania meili, dodamy do naszej aplikacji możliwość wykonywania zadań w tle. (Hangfire). Dodamy do naszej aplikacji kontener DI (Dependency Injection). Wzorzec projektowy i wzorzec architektury oprogramowania polegający na usuwaniu bezpośrednich zależności pomiędzy komponentami.

Model:
Model w ASP.NET MVC reprezentuje strukturę danych, logikę biznesową oraz reguły walidacji. Jest odpowiedzialny za dostęp do bazy danych, przetwarzanie danych i ich przechowywanie.

Widok (View):
Widoki są odpowiedzialne za prezentację danych użytkownikowi. Są to pliki HTML z dodatkowym kodem Razor, który pozwala na dynamiczne generowanie treści HTML na podstawie danych modelu.

Kontroler (Controller):
Kontrolery przetwarzają żądania użytkowników, wykorzystują modele do dostępu i manipulacji danymi, a następnie przekazują te dane do widoków w celu ich prezentacji. Każda akcja kontrolera jest zwykle powiązana z konkretnym żądaniem HTTP.
Walidacja po Stronie Serwera: ASP.NET MVC pozwala na implementację walidacji po stronie serwera za pomocą atrybutów walidacyjnych, które można stosować bezpośrednio do właściwości modeli. Przykłady takich atrybutów to [Required], [StringLength], [Range], i inne.

Walidacja po Stronie Klienta: Oprócz walidacji serwerowej, ASP.NET MVC wspiera również walidację po stronie klienta. Framework automatycznie generuje odpowiedni kod JavaScript, który zapewnia walidację danych przed ich wysłaniem na serwer.

Klasy walidacyjne niestandardowe: Można również tworzyć niestandardowe atrybuty walidacyjne, definiując klasy, które dziedziczą po klasie ValidationAttribute.
Anti-Forgery Token: ASP.NET MVC oferuje mechanizm anti-forgery token (token przeciwko fałszowaniu), który pomaga zapobiegać atakom CSRF (Cross-Site Request Forgery). Token jest generowany na serwerze i musi być dołączany do każdego żądania POST, co jest łatwe do zaimplementowania za pomocą atrybutu [ValidateAntiForgeryToken] w kontrolerach i helpera @Html.AntiForgeryToken() w widokach.

Strong Typing: Używanie silnie typowanych modeli w widokach i akcjach kontrolera zwiększa bezpieczeństwo, ponieważ framework zajmuje się poprawnym mapowaniem i konwersją danych.

Bezpieczne Zarządzanie Sesją i Cookies: W ASP.NET MVC należy zwrócić uwagę na bezpieczne zarządzanie sesją i cookies, szczególnie w kontekście uwierzytelniania i autoryzacji użytkowników.

Kod źródłowy dostępny na githubie

https://github.com/mariuszjurczenko/SklepAspNetMvc


4.2
4.2 z 5
opinie 5

Szczegóły oceny

5 ⭐️
1
4 ⭐️
4
3 ⭐️
0
2 ⭐️
0
1 ⭐️
0

{{ review.user }}

{{ review.time }}
 

Pokaż więcej
Proszę się zalogować, aby napisać opinię
Asp.Net MVC Praktyczny Kurs
Kategoria:
4.2 z 5
4.2
5 opinii