Vánoční nadílka Vánoční nadílka
Až 80% zdarma! Předvánoční BLACK FRIDAY akce. Více informací

Lekce 14 - E-shop v ASP.NET Core MVC - Recenze produktů

C# .NET ASP.NET ASP.NET Core E-shop E-shop v ASP.NET Core MVC - Recenze produktů

V minulé lekci, E-shop v ASP.NET Core MVC - Detail produktu, jsme vytvořili detail produktu. Dnes v ASP.NET Core tutoriálu do naší aplikace přidáme uživatelům možnost jednotlivé produkty ohodnotit. Recenze budou moci přidávat jen přihlášení uživatelé a to nejvýše jednu recenzi ke každému produktu. Jak hned uvidíme, přidaná funkcionalita způsobí změny ve všech vrstvách aplikace. Jako vždy si na začátek ukažme motivační obrázek:

Formulář pro přidání recenze produktu v ASP.NET Core e-shopu

Datová vrstva

Úpravy v entitním modelu

Do datového projektu si přidáme novou entitu Review pro ukládání recenzí a přidáme relace na produkt a uživatele. Kromě primárního klíče a cizích klíčů do zmíněných tabulek si budeme ukládat celočíselné hodnocení produktu (v rozsahu 1 - 5), obsah recenze (maximálně 2048 znaků) a datum a čas vložení recenze. Recenze opět vytvoříme jen uvedením virtuálních vazeb na vázané entity:

public class Review
{
    [DatabaseGenerated(DatabaseGeneratedOption.Identity), Key()]
    public int ReviewId { get; set; }

    [StringLength(2048, MinimumLength = 2, ErrorMessage = "Minimální délka hodnocení je 2 znaky, maximální 2048 znaků")]
    public string Content { get; set; }
    public string UserId { get; set; }
    public int ProductId { get; set; }
    public int Rating { get; set; }
    public DateTime Sent { get; set; }

    public virtual Product Product { get; set; }
    public virtual ApplicationUser User { get; set; }
}

Drobné změny provedeme i v existujících entitách Product a User. K produktu si přidáme virtuální kolekci


 

...konec náhledu článku...

Komerční článek (licence no-reselling)

Komerční článek (licence no-reselling)

Tento článek vznikl na základě mnohaletých zkušeností v oboru a popisuje vývoj profesionálního komerčního produktu nebo jeho součásti, kterou lze přímo využít za účelem zisku nebo proniknutí do komerční sféry IT odvětví.

Tyto vrcholové znalosti zpřístupňujeme samozřejmě pouze některým členům komunity, kteří se mají zájem vypracovat na profesionály v oboru a proto jsou k dispozici pouze za body. Kód z článku můžete použít pro jeden svůj komerční projekt. Není ho však možné přeprodávat (jednou zakoupit a poté prodat dálev několika projektech). Pokud potřebujete širší využití kódu, rádi se s vámi domluvíme na komerční licenci. Více informací naleznete v článku Licence.

Jste připraveni stát se profesionály v oboru? Stačí kliknout.

Popis článku

Požadovaný článek má následující obsah:

V tutoriálu přidáme novou entitu pro recenze produktů včetně relací. Připravíme příslušnou repository, manager v business vrstvě a upravíme pohledy.

Koupit pouze tento článek

Pro přístup k článku potřebuješ 32 bodů
Na svém účtu máš aktuálně 0 bodů
32 bodů získáš za přidání svého článku na síť nebo za 80 Kč

Před koupí tohoto článku je třeba koupit předchozí díl

Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.

Obsah článku spadá pod licenci Premium no-reselling II, koupí článku souhlasíš se smluvními podmínkami.

Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Dobít body můžeš okamžitě např.:

Kartou SMS Převodem
Kartou SMS Převodem

 

Článek pro vás napsal Martin Petrovaj
Avatar
Autor je lenivý vymýšľať nejaký slušný podpis. Venuje sa ale prevažne C#.
Aktivity (2)