【问题标题】:C# MVC4 ActionResult ActionFilter for FormCollection用于 FormCollection 的 C# MVC4 ActionResult ActionFilter
【发布时间】:2013-04-11 19:46:56
【问题描述】:

我有以下 ActionResults,其中一个是用来替代另一个接受 FormCollection 作为参数的。

   [HttpPost]
    public ActionResult PartialAverageDisplay()
    {
        HomeModel C = new HomeModel();
        ChViewModel D = new ChViewModel();
        D = C.AverageCalculation();

        return PartialView(D);
    }
   [HttpPost]
    public ActionResult PartialAverageDisplay(FormCollection myFcollection)
    {
         HomeModel C = new HomeModel();
         System.Data.DataTable myDT = new System.Data.DataTable();
         myDT = (DataTable)Session["DT"];
         ChViewModel D = new ChViewModel();
         D = C.AverageCalculation(myDT, myFcollection);

            return PartialView(D);
        }

我一直无法在网上找到一个示例,说明如何创建需要 FormCollection 的 actionfilter 属性。我见过的所有东西都使用了一个字符串数组。我没有创建动作过滤器的经验。谁能向我解释一下如何解决这个问题?

谢谢

【问题讨论】:

    标签: c# asp.net-mvc-4 attributes overriding action-filter


    【解决方案1】:

    MVC 不允许您使用相同的动作动词(Post、get 等)覆盖相同的方法。每个方法名称只能有一个 HttpPost。它会编译,但你会在运行时得到一个不明确的调用错误。

    这还包括使用多个 ActionName 来尝试解决问题。问题是 URL 只能映射到该类型的单个操作。

    【讨论】:

    • actionresult 返回一个包含填充数据表的部分视图。在主视图页面上,此数据表应首次加载硬编码值。当单击我的表单集合中包含的复选框时,jquery 函数应发布到其他操作结果,以便重新呈现部分视图并使用不同的结果填充数据表。我还有什么其他方法可以做到这一点?
    • @HendPro12 - 你为什么不改名字?
    猜你喜欢
    • 2014-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-02
    • 2021-08-13
    • 2019-09-23
    相关资源
    最近更新 更多