ASP.NET Core 8 Razor Pages привязка нескольких моделей страниц к одному маршрутуC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 ASP.NET Core 8 Razor Pages привязка нескольких моделей страниц к одному маршруту

Сообщение Anonymous »

Я работаю с ASP.NET Core 8.0.8. Мое приложение Razor Page имеет динамическую страницу Table.cshtml с маршрутом @page "/table/{table}", которая может принимать любую модель и отображать связанную информацию базы данных в формате с возможностью поиска. фильтруемая и сортируемая таблица. На этой странице Table.cshtml также показаны связанные действия, доступные пользователю на основе модели. У меня есть класс TableModel.cs, который обрабатывает все базовые запросы OnGet и OnPost, но некоторые модели расширяют этот класс, включив в него определенные обработчики OnPost (

Код: Выделить всё

OnPostCreate
, OnPostUpdate, OnPostDelete и т. д.) или задайте разные роли [Authorize(Roles = ...)]. Вот в чем моя проблема. Я просто не знаю, как прикрепить эти производные классы TableModel к моей странице Table.cshtml без создания отдельной/дубликата страницы для каждого. У меня множество моделей, поэтому я бы предпочел хранить логику рендеринга и базовую логику на одной странице.
Например:
  • < ли>

    Код: Выделить всё

    /table/products
    — доступен всем, использует класс TableModel.cs
  • Код: Выделить всё

    /table/items
    — доступен для аутентифицированных пользователей, использует класс ItemsTableModel.cs
  • Код: Выделить всё

    /table/users
    — доступен администраторам, использует класс UsersTableModel.cs
Я пытался вручную настроить маршрутизацию страниц в Program.cs< /code>, но безрезультатно.

Код: Выделить всё

options.Conventions.AddPageRouteModelConvention("/table/items", model => { new MyApp.Pages.ItemsTableModel(builder.Configuration); });
options.Conventions.AddPageRouteModelConvention("/table/users", model => { new MyApp.Pages.UsersTableModel(builder.Configuration); });
Я также пытался использовать частичные представления, но у меня возникли проблемы с необходимой IConfiguration.
Я знаю, что установка производного класса в качестве свойства также является вариантом, но я Я не уверен, как это будет работать с конкретными обработчиками OnPost. Открыт для любых предложений (если это вообще возможно).


Подробнее здесь: https://stackoverflow.com/questions/792 ... ngle-route
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Страницы ASP.NET Core 8 Razor, привязывающие несколько моделей страниц к одному маршруту
    Anonymous » » в форуме C#
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Сделает ли Blazor SSR устаревшими ASP.NET Core MVC и Razor Pages?
    Anonymous » » в форуме C#
    0 Ответы
    40 Просмотры
    Последнее сообщение Anonymous
  • Привязка моделей Entity Framework Core к методу действия в контроллере ASP.NET Core
    Anonymous » » в форуме C#
    0 Ответы
    121 Просмотры
    Последнее сообщение Anonymous
  • ASP.NET Razor Pages, передача данных из внешнего скрипта во внутренний
    Anonymous » » в форуме C#
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • Как проверить, является ли устройство на рабочем столе, Android или iOS в C# .NET CORE RAZOR PAGES?
    Anonymous » » в форуме C#
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»