как получить адрес главной страницы в cms orchard

Я создаю модуль для регистрации клиентов, и после регистрации мне нужно перенаправить пользователя на домашнюю страницу (по умолчанию). Я не вижу способа, так как в Orchard все работает как элементы контента.

Часть моего кода из контроллера приведена ниже

             $ if (!ModelState.IsValid)
            return new ShapeResult(this, _services.New.Checkout_Signup(Signup:  signup));

        var customer = _customerService.CreateCustomer(signup.Email, signup.Password);
        customer.FirstName = signup.FirstName;
        customer.LastName = signup.LastName;
        customer.Title = signup.Title;

        _authenticationService.SignIn(customer.User, true);

        return Redirect("~/Home Page URL here...");

person Hammad Bukhari    schedule 30.12.2013    source источник
comment
Так что домашняя страница не /, нет?   -  person mberacochea    schedule 31.12.2013


Ответы (1)


В Orchard домашняя страница имеет пустую строку для псевдонима. Можно найти RouteValueDictionary псевдонима, вызвав метод IAliasService.Get(). Получив это, вы можете просто передать его RedirectToRoute().

Итак, для главной страницы:

var homepage = _aliasService.Get(String.Empty);
return RedirectToRoute(homepage);

Вы можете увидеть, как Orchard использует этот механизм для проверки домашней страницы в AutoroutePartDriver.cs строках 66-72 файла в версии 1.7.2.

person Katsuyuki Ohmuro    schedule 01.01.2014