лучший способ определить область реферера MVC3 из вызова ajax - PullRequest
1 голос
/ 03 января 2012

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

Есть ли другой (более встроенный в MVC) способ сделать это?

На данный момент вызываемое действие выглядит как

public ActionResult Events(string recorded, bool ongoing)
{
 if (this.Request.UrlReferrer.Segments.Contains("Administration/"))
           :

и работает отлично, выглядит немного хакерски.

Есть мысли?

Ответы [ 2 ]

1 голос
/ 04 января 2012

URL-ссылка - это единственное указание, которое вы можете использовать. Но если вам это кажется хакерским, просто добавьте некоторый параметр к вашему вызову AJAX при вызове из области:

public ActionResult Events(string recorded, bool ongoing, bool isAdminAreaOrigin = false)
{
    if (isAdminAreaOrigin)
    {
        ...
    }

    ...
}
0 голосов
/ 03 января 2012

RouteData.DataTokens["area"]

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