【问题标题】:Html.ActionLink to call an action from a different controller that's in a different folderHtml.ActionLink 从不同文件夹中的不同控制器调用操作
【发布时间】:2015-07-03 04:51:48
【问题描述】:

我有一个简单的视图,如果登录成功,它会创建一个链接,并且位于 /Login 下:

<div>
@Html.ActionLink("Add a new Organization", "AddOrganization", 
           "/Setup/AddOrganizationController", new { id = Session["ID"] }, null)
</div>

在阅读了其他类似的问题后,我尝试在之后添加 null 以及其他一些重载,但我无法让链接正常工作。当我点击链接时,它会带我去

http://setup/AddOrganizationController/AddOrganization

这忽略了需要存在的本地主机部分。最后没有null,它会尝试将我发送到

/Login/AddOrganization

我想要的只是一个链接,它将在 /Setup 目录下的 AddOrganizationController 控制器中运行一个操作。该链接还应将会话 ID 作为参数传递给控制器​​。我该怎么做?

【问题讨论】:

  • 我真的不知道那是什么,所以我想我不是。
  • 我无法真正回答您的问题,甚至不知道您的项目的结构,但我想您值得一看。也许这个答案可以帮助你stackoverflow.com/a/6555971/1179061

标签: c# asp.net-mvc asp.net-mvc-4 actionlink


【解决方案1】:

如果它在同一个Area 中,那么你可以这样做:

@Html.ActionLink("Add a new Organization", "AddOrganization", "Organizations", new { id = Session["ID"] })

其中“组织”是控制器名称。

否则,如果它在另一个区域,你会做类似的事情

@Html.ActionLink("Add a new Organization", "AddOrganization", "Organizations", new { area = "areaName", id = Session["ID"] }, null)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-10
    • 1970-01-01
    相关资源
    最近更新 更多