Hirdetés
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Szólánc.
- kraftxld: Diáklaptop - Dell Latitude 3140 - Királyunk ajándéka
- Luck Dragon: Asszociációs játék. :)
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- Magga: PLEX: multimédia az egész lakásban
- sziku69: Fűzzük össze a szavakat :)
- Real Racing 3 - Freemium csoda
- WhrlpoolMind: Amikor vízre oldódó festék van a vízautomata karján
- D1Rect: Nagy "hülyétkapokazapróktól" topik
Új hozzászólás Aktív témák
-
joysefke
veterán
Sziasztok!
ASP.NET Core 2.1 MVC
Layout+View+ViewComponent témakörben kéne egy kis help. Sehogy nem tudom szépen megoldani amit szeretnék.
Tehát a user számára renderelt View tartalmaz egyrészt képeket, style-t (háttér-kép, általános szövegek, kedvcsinálók stb) illetve tartalmaz ezen felül a user-hez kapcsolódó adatokat is, amelyek egy form-ban kerülnek megjelenítésre (HttpGet), illetve onnan lesznek updatelve (HttpPost).
A kétféle adatot szeretném elválasztani, úgy, hogy:
-A parent View-nak (parent View == Index.cshtml) átadott ViewModel objektum kizárólag a user-hez kapcsolódó adatokat tartalmazza, ami a form-hoz hozzá is lesz kötve.
-A formázás, háttérkép, csicsa-micsát pedig egy az Index.cshtml-ből hívott ViewComponent (PageContentViewComponent.cs) által renderelt partial View tartalmazza (Default.cshtml). A ViewComponent ezeket az adatokat DI-al nyeri ki a content-repository-ból.Ami nem megy:
A Layout-ban hivatkozom néhány RenderSection-re, pld @RenderSection("Title"). Ezt a sectiont nem a View-ban, hanem a View által hívott ViewComponentben szeretném legenerálni.Tehát Layout-ban ez van:
......@RenderSection("Title")
.....
.....@RenderBody()<---- Ez szépen működikAz Index.cshtml-ben ez van:
........@await Component.InvokeAsync("PageContent")A PageContentViewComponent-hez tartozó Default.cshtml-ben az alábbiak vannak. A kérdéses section legalul van.
@model UIModel
<div class="div">
......
@await Html.PartialAsync("NavbarPartial", Model)
@await Html.PartialAsync("CouplePartial", Model.Couple)
@await Html.PartialAsync("EventsPartial", Model.Events)
@await Html.PartialAsync("PeoplePartial", Model.People)
@await Html.PartialAsync("GalleryPartial", Model.Gallery)
....
</div>
@section Title{
<title>@Model.General.Title</title>
}Erre ezt kapom:
InvalidOperationException: The layout page '/Views/Shared/_PrettyLayout.cshtml' cannot find the section 'Title' in the content page '/Views/Ui/Index.cshtml'.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Battlefield 6
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Szólánc.
- TCL LCD és LED TV-k
- Milyen routert?
- kraftxld: Diáklaptop - Dell Latitude 3140 - Királyunk ajándéka
- Formula-1
- Kuponkunyeráló
- Luck Dragon: Asszociációs játék. :)
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- AKCIÓ! Apple Macbook Pro 16" 2019 i9 9980HK 64GB DDR4 512GB SSD Radeon Pro 5500M garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! I5 9400F / RTX 2060 / 16GB DDR4 / 250SSD+500HDD
- Azonnali készpénzes INTEL CPU AMD VGA számítógép felvásárlás személyesen / postával korrekt áron
- Lenovo ThinkPad X13 G2 multitouch (minimálisan használt)
- Telefon felvásárlás!! Xiaomi Redmi Note 13, Xiaomi Redmi Note 13 Pro, Xiaomi Redmi Note 13 Pro+
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő

