2010-07-08 4 views
8

Я недавно обновил наш проект MVC 2 на работе, чтобы использовать области, но у меня небольшая проблема с методом RedirectToAction.RedirectToAction за пределами областей

У нас все еще есть некоторые наши контроллеры и т. Д. За пределами наших областей. Эти контроллеры включают Домашний контроллер и т. Д.

Как сделать RedirectToAction изнутри Района контроллеру за пределы Района.

Я думал, что-то вроде следующего может работать, но это не так:

return RedirectToAction("Index", "Home", new { area = "" }); 

или

return RedirectToAction("Index", "Home", new { area = null }); 
+0

Его значение означает, что вы хотите перейти на новый URL-адрес, вне контроллера? М, я понял? –

+0

Я хочу перенаправить на действие, которое находится за пределами текущей области. –

ответ

21

кажется, что мое оригинальное решение:

return RedirectToAction("Index", "Home", new { area = "" }); 

делает Infact работу.

Я не уверен, как мне удалось заставить его работать не раньше, но, похоже, он работает так, как ожидалось.

Также стоит отметить, что Visual Studio 2010 все еще говорит мне, что Cannot resolve action 'Index', хотя код работает нормально.

0

Попробуйте return RedirectToAction("Index", "Home", new {area = Nothing});

вычистить выше ...

Заканчивать это link здесь. В принципе, я думал, что вы пытались сделать это в представлении «Первоначально», а не в качестве контроллера. Поскольку я вижу, что это действие контроллера, вы должны использовать RedirectToRoute, чтобы перейти от текущей области.

+0

Я думаю, что ничто не является вещью VB.NET. Я использую C#. Я попробовал это в любом случае, чтобы быть уверенным, но да, это не работает. –

+0

Действительно, предположим, что тег C# должен был предупредить меня на другом языке :) в любом случае нашел дополнительную информацию для вас, чтобы проверить. – Tommy

+0

Спасибо за помощь Томми. Я пробовал работу RedirectToRoutes после обнаружения ее в Google, и она работает! Я также обнаружил, что мой вопрос немного нуль и недействителен, так как мой код RedirectToAction начал работать ... Я, должно быть, сделал что-то глупо, чтобы остановить его работу, но я не уверен, что. –

Смежные вопросы