Vánoční nadílka Vánoční nadílka
Vánoční akce! Daruj lepší budoucnost blízkým nebo sobě. Až +50 % zdarma na dárkové poukazy. Více informací

Lekce 10 - E-shop v ASP.NET Core MVC - Práce s obrázky - Dokončení

C# .NET ASP.NET ASP.NET Core E-shop E-shop v ASP.NET Core MVC - Práce s obrázky - Dokončení

V minulé lekci, E-shop v ASP.NET Core MVC - Správa produktů - Obrázky, jsme si připravili manager pro editaci obrázků včetně produktů. V dnešním ASP.NET Core tutoriálu dokončíme práci s obrázky úpravou pohledu a kontroleru. K tomu si přidáme ještě zobrazení stromové nabídky kategorií v levé části stránky, k čemu použijeme helper a MemoryCache.

Editační formulář produktu

Dnešní lekce také obsahuje dosavadní zdrojový kód ke stažení.

Kontroler

Úprava kontroleru (samozřejmě ProductController) bude jednoduchá. V POSTové akci Manage() si před volání metody SaveProduct() nejprve připravíme aktuální Id produktu a počet jeho obrázků:

int oldProductID = model.Product.ProductId;
int oldImagesCount = model.Product.ImagesCount;

Po zavolání metody UpdateProductCategories() ještě přidáme volání metody pro uložení obrázků:

productManager.SaveProductImages(model.Product, model.UploadedImages, oldProductID, oldImagesCount);

K tomu si přidáme akci pro mazání obrázků, kterou budeme volat z pohledu s pomocí AJAXu, tedy na pozadí. Výhodou toho je, že uživatel ani nemusí vědět, že k nějaké komunikaci se serverem došlo, protože stránka se nebude znovu načítat. Případné úpravy ve stránce (v našem případě odstranění náhledu obrázku) musíme tedy zajistit s pomocí JavaScriptu (jQuery).

[Authorize(Roles = "Admin")]
public void DeleteImage(int productID, int imageIndex)
{
    productManager.RemoveProductImage(productID, imageIndex);
}

A s úpravou kontroleru


 

...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:

Upravíme kontroler, zobrazíme obrázky produktů, použijeme JavaScript (jQuery) a AJAX v ASP.NET Core, vyrenderujeme stromové menu helperem z MemoryCache.

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)