Pisze aplikacje w c# asp.net mvc. Potrzebuje uzyc 1 prywatna metode w 2 roznych kontrolerach, jak to najlepiej zrobic? Jesli w kazdym z tych 2 kontrolerow zdefiniuje taka sama metode to chyba nie bedzie to najlepsze rozwiazanie?
Rozwiąż to za pomocą dziedziczenia. Zdefiniuj klasę z tą metodą i niech ta klasa dziedziczy od BaseController
, czy co tam MVC od M$ ma. Teraz niech kontrolery dziedziczą od tejże nowej klasy i problem rozwiązany.
Mały Orzeł napisał(a):
Pisze aplikacje w c# asp.net mvc. Potrzebuje uzyc 1 prywatna metode w 2 roznych kontrolerach, jak to najlepiej zrobic? Jesli w kazdym z tych 2 kontrolerow zdefiniuje taka sama metode to chyba nie bedzie to najlepsze rozwiazanie?
No raczej nie będzie to dobre. Zrób sobie jakiś service z którego będą korzystały oba kontrollery.
Dla mnie za mało danych.
Ja podejrzewam, że po prostu w kontrolerze znalazł się kod, którego tam nie powinno być.
Pewnie powinien być w osobnej klasie, albo w klasie modelu, albo ... .
Jak @grzesiek51114 napisał.
Typowy kontroler asp.net mvc dziedziczy po klasie Controler.
Robisz jakiś BaseControler dziedziczący po Controler i tam wstawiasz tę metodę.
Potem kontrolery właściwe, dziedziczące po BaseControler.
Oczywiście przy założeniu, że to kod, który w ogóle powinien być w kontrolerach.
Ok, dzieki za pomoc.