C# 如何从另一个控制器生成操作地址?

C# 如何从另一个控制器生成操作地址?,c#,model-view-controller,C#,Model View Controller,我在放置在某个区域的控制器中有一个动作 www.site.com/Panel/Product/GetProduct 在这个url中,“Panel”是区域名,“Product”是控制器名,“GetProduct”是操作名 在这个方法中我在不同的控制器和区域中创建了一个指向另一个动作的链接 www.site.com/Home/Index 我使用以下代码生成url: var callbackUrl = Url.Action("Index", "Home",null, Request.Url.Schem

我在放置在某个区域的控制器中有一个动作

www.site.com/Panel/Product/GetProduct

在这个url中,“Panel”是区域名,“Product”是控制器名,“GetProduct”是操作名

在这个方法中我在不同的控制器和区域中创建了一个指向另一个动作的链接

www.site.com/Home/Index

我使用以下代码生成url:

var callbackUrl = Url.Action("Index", "Home",null, Request.Url.Scheme);
但结果url如下所示:

www.site.com/Panel/Home/Index

如果所需控制器位于区域外。

请使用下面的

Html.ActionLink("Link Text", "ActionName", "ControllerName", new { Area = "AreaName" }, new{}) 

我不想在视图中使用此代码。我无法在实际操作中使用此代码

然后试试这个代码

var callbackUrl = Url.Action("Index", "Home", new { Area = "" });

我不认为最后一个参数必须是
new
-ed。null应该是fine。我不想在视图中使用此代码。我不能在实际操作中使用此代码。这是错误的。正如问题所述,“从控制器创建操作地址”不是视图