gpt4 book ai didi

asp.net-mvc - 如何在 .net mvc 中调用重载操作?

转载 作者:行者123 更新时间:2023-12-02 08:47:31 24 4
gpt4 key购买 nike

我的 Controller 中有一个重载的操作:

    public ActionResult AssignList(int id)
{
...
}

[AcceptVerbs((HttpVerbs.Get))]
public ActionResult AssignList(int id, bool altList)
{
...
}

我想对两个列表使用相同的部分 View ,但它可能会有不同的图像过滤列表。

我尝试使用 RenderAction 从另一个 View 调用它:

<% Html.RenderAction("AssignList", "Image", new { id = Model.PotholeId, altList = true }); %>

但是我收到以下错误:
当前对 Controller 类型“ImageController”上的操作“AssignList”的请求在以下操作方法之间不明确:UsiWeb.Controllers.ImageController 类型上的 System.Web.Mvc.ActionResultAssignList(Int32)UsiWeb.Controllers.ImageController 类型上的 System.Web.Mvc.ActionResultAssignList(Int32, Boolean)

如何调用特定的重载?

最佳答案

两个选项:

  • 组合成一个方法,例如:

    public ActionResult AssignList(int id, bool? altList){}

  • 为重载方法命名,例如:

    公共(public) ActionResult 分配列表(int id){}

    [ActionName("SomeActionName")]公共(public) ActionResult AssignList(int id, bool altList){}

我将向您推荐此链接:Can you overload controller methods in ASP.NET MVC?

关于asp.net-mvc - 如何在 .net mvc 中调用重载操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2571912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com