Получить базовый URL из сервисного уровня - PullRequest
2 голосов
/ 14 марта 2011

Я бы хотел получить URL-адрес, на котором размещено приложение.Существуют различные способы доступа клиентов к уровню обслуживания через приложение asp.net mvc, wcf (размещенное в приложении mvc).

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

1 Ответ

1 голос
/ 14 марта 2011

Это возможно, но не очень хорошая вещь.Вы связываете бизнес-уровень с деталями реализации, то есть с более высокими уровнями, и бизнес-уровень не должен знать о них.

Вы можете использовать различные свойства OperationContext.Current (в зависимости от вашей привязки), чтобы добраться до адреса.

Например, OperationContext.Current.IncomingMessageHeaders может использоваться для HTTP или OperationContext.Current.Host.BaseAddresses, если существуют базовые адреса.Вам просто нужно оценить, какой из них предоставляет адрес, который вы ищете, в зависимости от вашей конфигурации.

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