Вы можете украсить свой контроллер с помощью атрибута [ActionLinkArea]
, чтобы указать, что этот контроллер является частью области (да, нет способа узнать это во время выполнения, кроме как с помощью отражения и проверки, содержит ли пространство имен содержащую область, котораяЭто ненадежно. Это поведение изменится в ASP.NET MVC 4, где области будут первоклассными гражданами платформы):
[ActionLinkArea("Bar")]
public class FooController : Controller
{
public ActionResult Index()
{
return View();
}
}
Теперь следующее сгенерирует правильную ссылку:
<%= Html.ActionLink<FooController>(x => x.Index(), "Go to index in Bar area") %>