Nové výhodné predplatné namiesto kreditov je tu! Viac informácií. Upravili sme aj naše prevádzkové podmienky.
NOVINKA: Kurz Práca s umelou inteligenciou teraz už od 0 €. Staň sa žiadaným profesionálom. Zisti viac:

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.

Editačné formulár produktu

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

Vedomosti v hodnote stoviek tisíc získaš za pár eur

Došiel 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émiovej sekcie.

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íš s Prevádzkovými podmienkami.

Komerčný článok (licencia no-reselling)

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.
Článok pre vás napísal Martin Petrovaj
Avatar
Autor je lenivý vymýšľať nejaký slušný podpis. Venuje sa ale prevažne C#.
Aktivity