我环顾四周,但未能找到问题的解决方案。任何建议都将不胜感激。
我的网站有观看次数;家居,物品和包装。
在项目/详细信息页面上,我创建了以下链接,在此示例中,它传递了项目73的ItemID:
@Html.ActionLink("Create New", "Packaging/Create", new { id = Model.ItemID })
它在项目视图中链接到此处:
http://localhost:52618/Item/Packaging/Create/73
但是,我希望它在包装视图中链接到这里:
http://localhost:52618/Packaging/Create/73
谢谢,
答案 0 :(得分:1)
不应该是:
@Html.ActionLink("Create New", "Create", "Packaging", null, new { id = Model.ItemID })
PARAMS: 1.链接文字 2.动作名称 3.控制器名称 4.路线值 5. Html属性
答案 1 :(得分:1)
问题是当你没有通过“Controller”时,Html.ActionLink
会选择当前的控制器。
解决方案是在Html.ActionLink
函数调用中传递控制器。您需要使用LinkExtensions.ActionLink Method (HtmlHelper, String, String, String, Object, Object)
@Html.ActionLink("Create New", "Create", "Packaging", new { id = Model.ItemID }, null);
答案 2 :(得分:0)
ActionLink
第一个参数是要调用的方法的名称,第二个参数是控制器的名称。
你应该做一些像我想的那样
@Html.ActionLink("Create", "Packaging", new { id = Model.ItemID })
答案 3 :(得分:0)
问题似乎是你有一个区域定义的东西。在这种情况下,您需要指定其他参数,如下所示:
@Html.ActionLink("Create New", "Create", "Packaging", new { area = "", id = model.ItemID}, null)
我没有测试过代码,但它应该是这些代码。指定空白区域将创建一个指向当前活动区域之外的控制器的链接。