Зачем нам нужен собственный маршрут, если мы можем определить глобально? - PullRequest
0 голосов
/ 05 октября 2018

Если я могу добавить маршруты в global.ascx или аналогичном файле, то зачем нам нужен собственный маршрутизатор, то есть маршруты через отдельные методы WebApi.Когда это нужно?В чем выгода?

 [System.Web.Http.HttpPost]
 [Route("api/AndroidOperations/AddManualAppointment")]
        public object AddManualAppointment(AddManualBookingViewModel AddManualBookingVM) 
        {
            BookingsRepository BookingRep= new BookingsRepository();

            int ReturnRowsCount = BookingRep.InsertManualCustomerAppointments(AddManualBookingVM, out ReturnStatus, out ReturnMessage, out ReturnBookingID);

            return new {ReturnMessage= ReturnMessage, ReturnStatus= ReturnStatus};
        }

1 Ответ

0 голосов
/ 05 октября 2018

Маршрутизация атрибутов является более гибким решением, чем обычная маршрутизация, хотя бы потому, что она дает вам немного большую гибкость и размещает маршруты рядом с действиями, которые будут их фактически использовать.

Рассмотрите возможность выбора традиционных маршрутов, когда:

  • Требуется централизованная настройка всех ваших маршрутов.
  • Вы используете настраиваемые объекты ограничений.
  • У вас есть работающее приложение, которое вы не хотите изменять.

Рассмотрите возможность выбора маршрутов атрибутов, когда:

  • Вы хотите сохранить свои маршруты вместе с кодом своего действия.
  • Вы создаете новое приложение иливнесение существенных изменений в существующий.

Маршрутизация атрибутов прекрасно объединяет все о ваших контроллерах, включая URL-адреса, которые они используют, и выполняемые действия.Однако, безусловно, есть преимущества использования обоих в тандеме, особенно в ситуациях, когда вы знаете, как будут выглядеть некоторые маршруты, но не уверены в других.

Примечание: Маршрутизация атрибутов более конкретна иотменяет Конвенцию Routing.Убедитесь, что сначала для определения маршрутизации на основе соглашений определена маршрутизация атрибутов.

Для получения дополнительной информации см. документы и Маршрутизация атрибутов против обычной маршрутизации

...