Blazor - rendering HTML s aktivnymi prvkami

Ahojte,
planujem prepisat jeden svoj starsi projekt s .Net Frameworku a knockout.js do .Net 5 a Blazor serveru.

No pri planovani architektury a volby technologii som narazil na problem, ku ktoremu som nic nevygooglil, preto by som rad pocul aj ine nazory ako ho vyriesit.

Ide o to, ze sa s databazy vytahuje HTML-ko, ktore sa renderuje do kontaineru (HTML div) na frontende. To v Blazore problem nie je.

Problem je, ze obsahuje obrazky a linky, co su pre mna aktivne prvky - po kliknuti na obrazok sa otvori v shadowboxe (galerii), linky umoznuju preklikavanie sa medzi dokumentami ale vedu aj na externe stranky.

Ako to v Blazore riesit?

Prve co ma napadlo, je uz vyrenderovane HTML zbehnut javascriptom a zavesit tam udalosti typu onclick atd… ale to mi prislo tak strasne nemotorne a kostrbate, proste skrabanie sa cez hlavu.

Druhe co ma napadlo je, parsovat HTML a cez vlastnorucne napisanu komponentu s prepisat dane HTML na virtualny DOM cez metodu BuildRenderTree.

No nie je nieco lepsie?

Preprocesing na serveri pomocou HtmlAgilityPack https://html-agility-pack.net/
pripadne takto reprocesnut vsetky html resources v db

Celkom sa nechapeme. Preprocesing aj posprocesing daneho HTML robim.

Poviem to inak. Keby to robim v JS, tak po priradeni daneho HTML do divu zavesim onclick eventy na rozne tagy vo vnutri. Riesim, ako nieco podobne spravit v Blazori tak aby to bolo s kostolnym poriadkom.

Preco by bol JavaScript kostrbaty? Konecne sa vyuzije na to, na co sa ma vyuzit - na scriptovanie.
Nech zije $(document.body).on('click', '.my-selector', clickHandler);
Mimochodom, netreba ziade pridavanie onclick atributov, ani prebehavanie elementov.

Nestacilo by tam nagenerovat nejake idecka na tie elementy a zavesit sa na onclick parenta? to by mal predsa blazor zvladat.

Ano aj jquery aj tie ID-cka blazor zvlada. Vdaka za odpovede.

Skor som chcel vediet, ci niesu nejake moznosti, ktore by som si neuvedomil.