Могу ли я получить простое значение bool из другого контроллера в моем HomeController? - PullRequest
0 голосов
/ 02 декабря 2009

У меня есть проверка регистрации в моем RegistrationController:

public class RegistrationController : Controller
{
    private readonly IAmARegistrationRepository _RegistrationRepository;
    public RegistrationController(IAmARegistrationRepository registrationRepository)
    {
        _RegistrationRepository = registrationRepository;
    }
    public  bool IsRegistered(string userName)
    {
        return _RegistrationRepository.IsRegistered(userName);
    }
}

Как я могу проверить это с моего HomeController? Есть ли способ получить доступ к ControllerBuilder, чтобы подключить текущий открытый контроллер, если он есть? или, по крайней мере, иметь возможность сгенерировать его, используя фабрику пользовательских контроллеров, загруженную в ControllerBuilder в моем Global.asax.cs?

Ответы [ 2 ]

5 голосов
/ 02 декабря 2009

Я думаю, вы думаете об этом. У вас уже есть метод в вашем хранилище, который вы можете использовать. Зачем создавать другой контроллер просто для вызова метода, который просто откладывается на метод репозитория? Создайте экземпляр репозитория в вашем HomeController и используйте для него метод IsRegistered.

2 голосов
/ 02 декабря 2009

Одним из решений (из многих) было бы реализовать общую функцию IsRegistered в BaseController и иметь как HomeController, так и RegistrationControlle Inherit от вашего BaseController.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...