我在 cshtml 文件中有一个表单,在底部我有2个按钮。
按钮1 它在自己的控制器中调用自己的方法[HttpPost]。
<p>
<input type="submit" value="Submit" id="SubmitID" />
</p>
按钮2 我调用方法&#34;添加&#34;在另一个控制器中,例如XYZ。
@Html.ActionLink("Add btn", "Add", "XYZ",
new { id = Model.myId }, "")
问题:如何从控制器内的按钮2(来自button1)调用操作?简单地:从另一个控制器调用方法。 以及如何将 new {id = Model.myId} 传递给控制器。
也许有更好的方法吗?也许他想要做的是与良好的做法不一致?如果是这样,我应该如何得到我的结果。
答案 0 :(得分:1)
您可能需要再指定一点,但假设操作为Add
且控制器为XYZ
,您将完全按照自己的意愿行事......是否存在问题?
http://msdn.microsoft.com/en-us/library/dd504972(v=vs.118).aspx
答案 1 :(得分:1)
我无法回想起所有细节,但在1控制器方法中,我使用了以下内容:
public ActionResult Method1(int id)
{
var controller = new XYZ();
return controller.Add(id);
}
您需要将上述控制器调用添加到当前的控制器方法中。
<强>更新强> 也许更好的解决方案是拥有两个控制器都可以调用的通用方法;这将更容易维护。