Asp.net mvc 4 ASP.NET MVC如何在Html.NET中使用两个Actionresults?
我正试图做与这个问题描述的相同的事情,但差异太大,以至于我真的不知道如何将其应用到我的项目中: 我的视图有3个下拉列表(profilelist、connected salarylist和not connected salarylist) 看起来像这样:Asp.net mvc 4 ASP.NET MVC如何在Html.NET中使用两个Actionresults?,asp.net-mvc-4,Asp.net Mvc 4,我正试图做与这个问题描述的相同的事情,但差异太大,以至于我真的不知道如何将其应用到我的项目中: 我的视图有3个下拉列表(profilelist、connected salarylist和not connected salarylist) 看起来像这样: <div class="row bgwhite"> @using (Html.BeginForm("GetConnectedSalaries", "KumaAdmin", FormMethod.Get, ne
<div class="row bgwhite">
@using (Html.BeginForm("GetConnectedSalaries", "KumaAdmin", FormMethod.Get, new { Id = "ProfileListForm" }))
{
<div class="four columns list list1">
@Html.DropDownList("Profiles", (SelectList) ViewBag.Profiles, "--Välj profilgrupp--",
new
{
//onchange = "$('#ProfileListForm')[0].submit();"
// Submits everytime a new element in the list is chosen
onchange = "document.getElementById('ProfileListForm').submit();"
})
</div>
}
@using (Html.BeginForm("Index", "KumaAdmin", FormMethod.Get, new { Id = "SalaryListForm" }))
{
<div class="four columns list list2" style="margin-top:-19px;">
@Html.DropDownList("Salaries", (SelectList) ViewBag.Salaries, "--Kopplade LöneGrupper--")
</div>
}
@using (Html.BeginForm("GetNOTConnectedSalaries", "KumaAdmin", FormMethod.Get, new { Id = "NotConSalaryListForm" }))
{
<div class="four columns list list2" style="margin-top:-19px;">
@Html.DropDownList("Salaries", (SelectList)ViewBag.NotConSalaries, "--Ej Kopplade LöneGrupper--")
<input style="float: left;" type="submit" value="Knyt" />
</div>
}
</div>
我不想做的事:
当我在profilelist中选择一个元素时,我想调用2个actionresults,上面显示的一个,第二个将填充我的第三个列表,该列表将包含“not connected”。
第二个行动结果:
public ActionResult GetNOTConnectedSalaries(int Profiles = -1)
{
Model.SalaryGroups = AdminManager.GetNOTConnectedSalaries(Profiles);
ViewBag.NotConSalaries = new SelectList(Model.NotConSalaryGroups, "Id", "SalaryName", "Description");
return (Index());
}
我不想使用AJAX/JSON,严格来说是MVC。
我读了上面链接的问题,但不知道如何将其应用到我的项目中,或者是否有可能这样做
如果需要更多的信息,请询问,我会尽力提供
谢谢大家! 我非常确定,最好的方法是有两个actionresult,我完全不知道解决方案,我可以从同一个actionresult调用我的两个db方法并填充这两个列表 简单解决方案:
[HttpGet]
public ActionResult GetSalaries(int Profiles = -1)
{
Model.SalaryGroups = AdminManager.GetConnectedSalaries(Profiles);
ViewBag.Salaries = new SelectList(Model.SalaryGroups, "Id", "SalaryName", "Description");
Model.NotConSalaryGroups = AdminManager.GetNOTConnectedSalaries(Profiles);
ViewBag.NotConSalaries = new SelectList(Model.NotConSalaryGroups, "Id", "SalaryName", "Description");
return (Index());
}
如果我浪费了你的时间,我很抱歉:(但希望这能帮助其他试图这样做的人。)
但是,如果有一种方法可以在两个actionresults中实现这一点,那么我将把这个问题留待讨论,看看它是如何实现的。为什么不将两个操作的逻辑都放在一个操作中,因为从技术上讲,客户端只执行一个操作,尽管您希望返回两个结果。
[HttpGet]
public ActionResult GetSalaries(int Profiles = -1)
{
Model.SalaryGroups = AdminManager.GetConnectedSalaries(Profiles);
ViewBag.Salaries = new SelectList(Model.SalaryGroups, "Id", "SalaryName", "Description");
Model.NotConSalaryGroups = AdminManager.GetNOTConnectedSalaries(Profiles);
ViewBag.NotConSalaries = new SelectList(Model.NotConSalaryGroups, "Id", "SalaryName", "Description");
return (Index());
}