10. diel - E-shop v ASP.NET Core MVC - Práca s obrázkami - Dokončenie
V minulej lekcii, E-shop v ASP.NET Core MVC - Správa produktov - Obrázky , sme si pripravili manager pre editáciu
obrázkov vrátane produktov. V dnešnom ASP.NET Core tutoriálu dokončíme
prácu s obrázkami úpravou pohľadu a kontroleru. K tomu si pridáme ešte
zobrazenie stromovej ponuky kategórií v ľavej časti stránky, k čomu
použijeme helper a MemoryCache
.
Dnešné lekcie tiež obsahuje doterajšie zdrojový kód na stiahnutie.
Kontrolér
Úprava kontroleru (samozrejme ProductController
) bude
jednoduchá. V Poštová akciu Manage()
si pred volanie metódy
SaveProduct()
najprv pripravíme aktuálnu Id
produktu
a počet jeho obrázkov:
int oldProductID = model.Product.ProductId; int oldImagesCount = model.Product.ImagesCount;
Po zavolaní metódy UpdateProductCategories()
ešte pridáme
volanie metódy pre uloženie obrázkov:
productManager.SaveProductImages(model.Product, model.UploadedImages, oldProductID, oldImagesCount);
K tomu si pridáme akciu pre mazanie obrázkov, ktorú budeme volať z pohľadu s pomocou AJAXu, teda na pozadí. Výhodou toho je, že používateľ ani nemusí vedieť, že k nejakej komunikácii so serverom došlo, pretože stránka sa nebude znova načítavať. Prípadné úpravy v stránke (v našom prípade odstránenia náhľadu obrázku) musíme teda zabezpečiť s pomocou JavaScriptu ( jQuery).
[Authorize(Roles = "Admin")] public void DeleteImage(int productID, int imageIndex) { productManager.RemoveProductImage(productID, imageIndex); }
A s úpravou kontroleru
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Obmedzená ponuka: Nauč sa všetko a ušetri
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium no-reselling II, kúpou článku súhlasíš so zmluvnými podmienkami.
Komerčný článok (licencia no-reselling)
Tento článok vznikol na základe mnohoročných skúseností v odbore a opisuje vývoj profesionálneho komerčného produktu alebo jeho súčasti, ktorú možno priamo využiť za účelom zisku alebo k preniknutiu do komerčnej sféry IT odvetvia.
Tieto vrcholové znalosti sprístupňujeme samozrejme iba niektorým členom komunity, ktorí sa majú záujem vypracovať na profesionálov v odbore a preto sú k dispozícii len za kredity. Kód z článku môžete použiť pre jeden svoj komerčný projekt. Nie je ho však možné prepredávať (raz zakúpiť a následne predať ďalej v niekoľkých projektoch). Ak potrebujete širšie využitie kódu, radi sa s vami dohodneme na komerčnej licencii. Viac informácií nájdete v článku Licencia.
Ste pripravení stať sa profesionálmi v odbore? Stačí kliknúť.
Popis článku
Požadovaný článok má nasledujúci obsah:
Upravíme kontrolér, zobrazíme obrázky produktov, použijeme JavaScript (jQuery) a AJAX v ASP.NET Core, vyrenderuje stromovej menu Helper z MemoryCache.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.