login  Naam:   Wachtwoord: 
Registreer je!
 Forum

MVC C# method die altijd laad (Opgelost)

Offline Wijnand - 26/01/2009 14:08
Avatar van WijnandModerator Ik ben bezig met een ASP.NET C# MVC project.

Nu wil ik iets waarvan ik ervan uitga dat het kan, maar ik weet (nog) niet hoe.

Ik heb een methode in een controller gemaakt (app_controller). Die controller wordt door elke andere controller ge-extend. Dat werkt allemaal goed.

Nu wil ik alleen dat standaard/default (altijd als die class ge-extend wordt oid) dat de method ook aangeroepen wordt.

Hierin ga ik bijvoorbeeld een check gooien of de persoon de juiste sessies heeft, het juiste ipadres, of wat ik maar ook bedenk.

Hoe kan ik dit netjes voor elkaar krijgen?

4 antwoorden

Gesponsorde links
Offline marten - 26/01/2009 14:18
Avatar van marten Beheerder Ik weet niet of erin zit maar kan je geen constructor constructie maken?
Offline Wijnand - 26/01/2009 14:27 (laatste wijziging 26/01/2009 14:30)
Avatar van Wijnand Moderator Nog niet gezien. Ik ga even googlen..

edit:
Ik zag in global.aspx staan: protected void Application_Start()

Dit schijnt hetgeen te zijn dat ik bedoel, maar binnen deze method kan ik geen response.redirect doen of iets dergelijks. Want ik heb bijvoorbeeld een check die ik bouw om te kijken of hij wel inlog-sessies heeft. Als hij die niet heeft, moet hij 'teruggestuurd' worden naar de inlog. Anders mag hij gewoon alle pagina's zien BEHALVE de inlogpagina.

Dus moet ik de persoon dus door kunnen sturen (response.redirect).
Offline nemesiskoen - 26/01/2009 14:37
Avatar van nemesiskoen Gouden medaille

PHP expert
Je moet inderdaad in je global.asax zo'n zaken instellen. Wil je persé iemand doorsturen kan dit via:

  1. HttpContext.Current.Response.Redirect("...");


Maar uiteindelijk zal je in elke methode dit moeten controleren (zoiets moet eig niet in global.asax), want voor elke methode is het specifiek of je daar mag zijn of niet.

  1. class JeController {
  2. public ActionResult Iets() {
  3. JeAuthenticationModule.MagDeHuidigeGebruikerHierZijn("een of andere paramter die aangeeft op welke pagina de huidige gebruiker zich bevind", "misschien nog een paramter die bepaalt of de huidige gebruiker bv. een item heeft gepost en het daarom mag bewerken/verwijderen/iets...");
  4. }
  5. }


Zo werk ik toch, en het werkt aardig, gewoon altijd als eerste (of in het begin toch) regel zien of de huidige gebruiker daar mag zijn.
Offline Wijnand - 26/01/2009 14:45
Avatar van Wijnand Moderator Je hebt gelijk dat dat netter is, maar voor dit project is er een inlogpagina. Alle pagina's mogen bezocht worden met een 'sessie'. Zonder sessie mag er geen een bezocht worden.

vandaar. Maar ik hou jouw laatste stukje even in gedachte, voor latere projecten of uitbreidingen.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.171s