JS ajax调用单独的C#方法

问题描述 投票:0回答:1

我试图弄清楚为什么我不能在C#中从Ajax调用单独的方法。它正在调用正确的控制器。但是,它没有调用正确的方法。它似乎正在调用控制器,并碰到它遇到的第一个POST。我尝试了url.Action方法和CONTROLLER / ACTION方法。我什至尝试给它发送不同的参数。请参见下面的代码。任何帮助都会很棒。提前致谢。

 //Clicked confirm
  $.ajax({
      url: '@url.Action("assemble", "/api/inventoryItem/") ' + '?QTY=' + qty + '&ITEMID=' + id + '&ASSEMBLE=true',
      type: 'POST',
  $.ajax({
      url: '/api/inventoryItem/assemble' + '?QTY=' + qty + '&ITEMID=' + id + '&ASSEMBLE=true',
      type: 'POST',

我似乎总是在我的控制器中点击我的检查方法(从上向下阅读时),我需要点击我的汇编方法。

    [HttpPost("{ITEMID,QTY}")]
    [ActionName("check")]        
    public IActionResult check(string? ITEMID, string? QTY)
    {


    [HttpPost("{QTY,ITEMID,ASSEMBLE}")]
    [ActionName("assemble")]
    public IActionResult Assemble(string? QTY, string? ITEMID, bool? ASSEMBLE)
    {
javascript c# asp.net-ajax asp.net-apicontroller
1个回答
0
投票

您应该将单词“ assemble”更改为您要执行的操作的名称。

   $.ajax({
          url: '/api/inventoryItem/check' + '?QTY=' + qty + '&ITEMID=' + id,
          type: 'POST',
© www.soinside.com 2019 - 2024. All rights reserved.