W jaki sposób mogę wywołać ten sam kod dla wielu stron? Coś a'la middleware w Laravelu? Próbowałem np. prywatnych metod, ale przekierowanie nie działa, jeśli nie wykonam go bezpośrednio w publicznej metodzie kontrolera, dlaczego tak jest, bo znam ten sam problem z Laravela i właśnie middleware było rozwiązaniem. Czy jest coś podobnego dla ASP.Net?
Podaj jakiś przykład, jaki kod, gdzie, w jakim celu...
Co do middleware to w ASP.NET również możesz sobie middleware rejestrować i korzystać. Sporo informacji jest w sieci na ten temat.
lukaszek016 napisał(a):
Podaj jakiś przykład, jaki kod, gdzie, w jakim celu...
Co do middleware to w ASP.NET również możesz sobie middleware rejestrować i korzystać. Sporo informacji jest w sieci na ten temat.
Chcę sprawdzić, czy użytkownik jest zalogowany, jak nie to przekierowanie. Co do middleware to szukam, ale jak masz coś sprawdzonego to możesz dać link.
Filtry, w szczególności filtry uwierzytelnienia:
https://docs.microsoft.com/pl-pl/aspnet/core/mvc/controllers/filters?view=aspnetcore-2.1#authorization-filters
https://docs.microsoft.com/pl-pl/aspnet/web-api/overview/security/authentication-filters
Ogólnie filtry - mogą być per kontroler, akcja albo także globalne, a na niższym poziomie handlery.
No w Twoim przypadku, tak jak koledzy wyżej - filtry uwierzytelniania. Generalnie masz kilka rodzajów filtrów, w Twoim przypadku piszesz sobie filtr uwierzytelniania i definiujesz w nim, gdzie ma zostać przekierowany użytkownik, który spróbuje np. "wywołać" metodę kontrolera, na której założysz ten filtr.
Tutaj, jest fajny pdf z grafiką z przepływem zapytań w ASP NET, tak jako ciekawostka ;)
Edit: Poprawiłem linka.
Dziękuję za sugestie. Udało mi się znaleźć taki link: https://www.learnmvc.in/aspnet-mvc5-authentication-filters-example.php Bardzo pomocne, bo akurat czegoś takiego szukałem.
Filtry są bardzo wygodne, ale przynajmniej mnie trudno na początku odnaleźć się widząc te wszystkie nieznane klasy, interfejs i zawiłości.
gambitek9 napisał(a):
Filtry są bardzo wygodne, ale przynajmniej mnie trudno na początku odnaleźć się widząc te wszystkie nieznane klasy, interfejs i zawiłości.
Dlatego warto przerobić tutorial z oficjalnej strony. Wiem, że to zajmuje czas, ale z drugiej strony pozwala zaoszczędzić na niewynajdywaniu koła na nowo.