ASP.NET Маршрут MVC на основе веб-браузера / Устройство (например, iPhone)

Действительно ли это возможно, из ASP.NET MVC, для маршрутизации к различным контроллерам или действиям на основе устройства/браузера доступа?

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

Какая-либо идея о том, как сделать это?

7
задан Alex 27 May 2010 в 05:57
поделиться

2 ответа

Лучше всего использовать фильтр настраиваемых действий.

Все, что вам нужно сделать, это унаследовать от ActionMethodSelectorAttribute и переопределить класс IsValidRequest .

public class [IphoneRequest] : ActionMethodSelectorAttribute
    {
        public override bool IsValidForRequest(ControllerContext controllerContext, System.Reflection.MethodInfo methodInfo)
        {
             // return true/false if device is iphone

Затем в вашем контроллере

[IphoneRequest]
public ActionResult Index()
0
ответ дан 7 December 2019 в 18:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: