Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

MVC 5 - Content buiten de 'body-content' container in Home

Pagina: 1
Acties:

  • NickThissen
  • Registratie: November 2007
  • Laatst online: 18-11 13:07
Hoi,

Ik ben nieuw in het gebruik van MVC 5 in combinatie met de Bootstrap layout / ui. Ik zit te worstelen met het maken van een mooie Home pagina.

Als ik het goed begrijp zit de hoofd layout van de website in the _Layout.cshtml view. Die view bevat een RenderBody commando waar dan de view van alle "sub paginas" in geplakt wordt:
code:
1
2
3
4
5
6
7
    <div class="container body-content">
        @RenderBody()
        <hr />
        <footer>
            <p>&copy; @DateTime.Now.Year - Blaat</p>
        </footer>
    </div>


Deze RenderBody zit dus binnen het 'container body-content' element, welke een margin en maximale breedte aan de pagina geeft.

Nu wil ik deze margin en maximale breedte eigenlijk weg hebben maar dan enkel voor mijn Home pagina. Voor alle content pagina's is dit prima, maar in de Home pagina wil ik graag een afbeelding (net onder de navbar) die de hele pagina beslaat.

De CSS die daarvoor moet zorgen krijg ik waarschijnlijk zelf wel voor elkaar, maar het probleem is dat alles wat ik in de Home view stop binnen de body-content tag komt, en dus altijd die margin krijgt.


Mijn vraag is dus: hoe kan ik de Home pagina nou aanpassen zodat een gedeelte ervan buiten die body-content div geplaatst wordt?

Het resultaat moet dus zoiets worden:
code:
1
2
3
4
5
6
7
8
    @RenderHomeImage()
    <div class="container body-content">
        @RenderBody()
        <hr />
        <footer>
            <p>&copy; @DateTime.Now.Year - Blaat</p>
        </footer>
    </div>


Hier moet @RenderHomeImage dus iets zijn wat mijn afbeelding html plaatst, terwijl RenderBody gewoon de rest van de home pagina en alle andere pagina's op de normale manier plaatst.


De enige manier die ik kan bedenken is om de RenderBody buiten de body-content div te plaatsen, en de body-content div daarna in elke sub pagina te plaatsen. Maar dat wil ik eigenlijk niet natuurlijk, dan moet ik alle views gaan aanpassen en daar ook steeds aan denken bij elke nieuwe view.... Dit moet toch wel makkelijker kunnen?

Bedankt..

Mijn iRacing profiel


  • HMS
  • Registratie: Januari 2004
  • Laatst online: 17-11 00:33

HMS

Kijk eens naar sections in Razor (linkje: http://weblogs.asp.net/sc...-sections-with-razor.aspx).

Is ASP.NET MVC 3, maar zou nog steeds relevant moeten zijn.

  • NickThissen
  • Registratie: November 2007
  • Laatst online: 18-11 13:07
Bedankt! Dat was de betere oplossing die ik zocht... Werkt perfect :)

Mijn iRacing profiel


  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Je kunt er ook voor kiezen om een losse layout te gebruiken voor de homepage. Je kunt de layout veranderen door de Layout variabele te setten in je view. De standaard instelling wordt geset in _ViewStart.cshtml.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info