Способы совместного использования между несколькими контроллерами С# MVC4
У меня тот же метод, который я называю шестью контроллерами. Прямо сейчас я копирую и вставляю между каждым из контроллеров. Все контроллеры находятся в одном пространстве имен. Метод возвращает bool на основе переданного id. Например:
public bool CheckSubmission(int id =0)
{
Get Records from DB with criteria
If Record available return true
else return false
}
Я некоторое время отсутствовал от С++ С# и не могу найти, как писать их один раз. Я знаю, что в Rails я могу использовать общие функции в ApplicationController. Я видел несколько Вопросов о SO об этом, но не ясный пример, они больше похожи на строки, прочитанные в ООП. Любая помощь будет оценена по мере того, как я вернусь к этому.
Ответы
Ответ 1
Создайте класс ControllerBase
, который наследует от Controller
, поместите этот метод в него.
У вас наследуются контроллеры от вашего базового контроллера - они будут использовать эту реализацию.
public class ControllerBase : Controller
{
public bool CheckSubmission(int id = 0)
{
Get Records from DB with criteria
If Record available return true
else return false
}
}
public class SomethingController : ControllerBase
{
// Can use CheckSubmission in here
}