Razor Pages Area и маршрутизация на основе домена - PullRequest
0 голосов
/ 24 апреля 2019

В настоящее время я экспериментирую с многодоменным приложением, чтобы добавить несколько бритвенных страниц, имеющих опыт администратора / входа в систему.

В настоящее время конструкция будет выглядеть следующим образом:

  • Площадь:
    1. Администратор
    2. Счет

и администратор, и учетная запись теперь должны быть доступны только в том случае, если домен соответствует https://admin.*, маршрут администратора также должен быть основным маршрутом, поэтому «область» /Admin будет / должна быть удалена. Вторая часть относительно проста с Page Route Conventions:

    private void Admin(PageRouteModel model)
    {
        var selectorCount = model.Selectors.Count;
        var overrideSelectors = new List<SelectorModel>();
        for (var i = 0; i < selectorCount; i++)
        {
            var selector = model.Selectors[i];

            Console.WriteLine($"Selector: {selector.AttributeRouteModel.Template}");

            var template = selector.AttributeRouteModel.Template.Replace("Admin", "").TrimStart('/');
            overrideSelectors.Add(new SelectorModel
            {
                AttributeRouteModel = new AttributeRouteModel
                {
                    Order = 1,
                    Template = template,
                }
            });
        }

        model.Selectors.Clear();
        ((List<SelectorModel>)model.Selectors).AddRange(overrideSelectors);
    }

На самом деле я нашел следующую ссылку: .net маршрутизация ядра в область страниц бритвы на основе текущего имени домена?

однако я не уверен, так ли это, так как мне понадобится промежуточное программное обеспечение, и я также не уверен, будут ли ссылки на бритвенные страницы работать правильно при использовании asp-area, asp-page, и т.д ...

Есть ли лучшая практика или другой способ сделать это?

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