Przekierowanie do działania między obszarami?

Czy istnieje sposób na przekierowanie do określonej akcji / kontrolera na innym obszarze?

Author: Jonathan, 2009-09-08

3 answers

Próbowałeś tego?:

return RedirectToAction("action", "controller", new { area = "area" });
 224
Author: eu-ge-ne,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-08 05:41:53

Twoja odpowiedź była dla mnie pomocna. Chciałem tylko dodać poniżej:

Jeśli chcesz przekierować z jednego obszaru do drugiego, powyższy kod działa dobrze.

I, jeśli chcesz przekierować z jednego obszaru do kontrolera/widoku, którego nie ma w folderze obszaru (tj. w większości przypadków Twój front end), możesz podać area = "".

Tzn.

return RedirectToAction("action", "controller", new { area = "" });
 35
Author: Suhani Mody,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-06 09:08:15

Chciałbym poprosić o kontynuację tutaj. Zrozumienie, że

return RedirectToAction("action", "area1/controller")

Jest również reprezentowany przez

return RedirectToAction("action", "controller", new { area = "area1" });

Jak można przewiercić się do kolejnych zagnieżdżeń obszarowych używając tej samej notacji? Dużym plusem posiadania odpowiedniej notacji jest to, że w szczególności reSharper refaktoring jest obsługiwany odpowiednio, jeśli kiedykolwiek będziesz musiał wrócić i "zmienić nazwę" któregokolwiek z kontrolerów. Gdy dodam dodatkowy obszar do mieszanki i zagnieżdżę je w sobie, poprzednia notacja nie jest odpowiednikiem.

return RedirectToAction("action", "area1/area2/controller");
Będę aktualizował pytanie, jeśli znajdę je pierwszy.

Ok, więc uważam, że odpowiedź nie jest niczym spektakularnym, ale najlepszym sposobem, aby to zrobić, więc nadal masz jakieś poprawne zabarwienie w / resharper & intellisense jest następujący: {]}

return RedirectToAction("action","controller", new { area = "area1/area2" });

Przynajmniej tutaj będziesz miał możliwość F12 lub Ctrl + kliknij kontroler i być kierowane do niego i jeśli trzeba zrobić jakąś zmianę nazwy Resharper znajdzie go...ale nie wprowadzi żadnych zmian w obszarach defined...so wybierz swoje bitwy.

W większości warunków mogę całkowicie unikać przekierowań...ale czasami trzeba robić to, co trzeba.

 15
Author: beauXjames,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-06 22:43:57