.NET MVC Razor Post Action - “/”中的服务器错误

我正在尝试在其他人的代码中修复这个“'/'应用程序中的服务器错误”。我假设他们正在尝试做一些聪明的事情,但从未让它起作用,或者发生了一些变化以使其停止工作。但是,我不知道它是否有效。


让我向您展示代码并解释行为,希望这里有人能够帮助我解决这个问题。先感谢您。


代码

表单上有一个删除按钮:


 <a href='@Url.Action("Delete", new { queryId = uq.Id })' class="button small" title="Click to delete this query">Delete</a>

那应该执行以下控制器方法。


    [HttpPost]

    public ActionResult Delete(int? queryId)

    {

        var userId = CurrentUser.Id;

        UserQueryService uqs = new UserQueryService();

        uqs.Delete(userId, (int)queryId);

        return View("Index", new UserQueryService().GetByUserId(userId));

    }

但是执行永远不会进入方法。相反,我收到以下信息。

http://img4.mukewang.com/60f390910001573819170738.jpg

试过

因此,我从 href 链接和控制器中删除了 queryId 参数,并将其设为操作(而不是发布)。这是我的测试代码:


<a href='@Url.Action("Delete")' class="button small" title="Click to delete this query">Delete</a>

执行进入控制器。


    //test method

    public ActionResult Delete()

    {

        var userId = CurrentUser.Id;

        UserQueryService uqs = new UserQueryService();

        return View("Index", new UserQueryService().GetByUserId(userId));

    }

谁能告诉我参数传递代码有什么问题导致它找不到控制器方法?


慕标5832272
浏览 199回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP