首页 > 解决方案 > 如何在 Url.Action 和模型中传递区域

问题描述

我正在尝试使用 Url.Action 来指定用于指定参数的操作、控制器和模型。这看起来像这样:@Url.Action("action", "controller", model)

我现在也在尝试指定一个区域。似乎大多数建议是您这样做:@Url.Action("action", "controller", new {Area = "area"})

有谁知道您如何指定模型和区域?

标签: asp.net

解决方案


Url.Action 方法有一个重载,它接受一个动作、控制器和 RouteValueDictionary。要解决无法将您的区域分配给模型的问题,您可以执行以下操作:

@{
    var routeValues = new System.Web.Routing.RouteValueDictionary(model);
    routeValues.Add("Area", "area");
}
@Url.Action("action", "controller", routeValues)

推荐阅读