我已经研究过通过ajax调用c#,当我设置断点时,我的实现没有达到c#方法

我已经研究过通过ajax调用c#,当我设置断点时,我的实现没有达到c#方法,c#,jquery,ajax,C#,Jquery,Ajax,我的javascript调用c#类中的方法,ajax调用确实进入了success方法,但当我进入断点时,它确实击中了c#方法。我尝试将shoppingcart.aspx更改为shoppingcart.aspx.cs,但仍然没有使用c#方法 我想你只错过了开头的/。更正url,如下所示: url: "/ShoppingCart.aspx/deleteSelectedProduct/", 试试看,如果它不起作用就告诉我。我想你只错过了开头的/。更正url,如下所示: url: "/Shoppi

我的javascript调用c#类中的方法,ajax调用确实进入了success方法,但当我进入断点时,它确实击中了c#方法。我尝试将shoppingcart.aspx更改为shoppingcart.aspx.cs,但仍然没有使用c#方法


我想你只错过了开头的
/
。更正url,如下所示:

 url: "/ShoppingCart.aspx/deleteSelectedProduct/",

试试看,如果它不起作用就告诉我。

我想你只错过了开头的
/
。更正url,如下所示:

 url: "/ShoppingCart.aspx/deleteSelectedProduct/",

试试看,如果它不起作用,请告诉我。

您需要
[WebMethod]
在aspx页面中的函数上方进行装饰。

您需要
[WebMethod]
aspx页面中函数上方的装饰。

您尝试使用ajax调用访问的方法应使用
WebMethod
属性装饰,以启用ajax调用(@Dominic已经建议,我只是将其描述为一种解决方案)。应该是这样的:

[System.Web.Services.WebMethod]
public void deleteSelectedProduct()
{
   //implementation code
}
或者将
System.Web.Services
作为名称空间包含在页面顶部,并直接使用
WebMethod


干杯

您尝试使用ajax调用访问的方法应该使用
WebMethod
属性进行修饰,以启用ajax调用(@Dominic已经提出了这一点,我只是将其描述为一种解决方案)。应该是这样的:

[System.Web.Services.WebMethod]
public void deleteSelectedProduct()
{
   //implementation code
}
或者将
System.Web.Services
作为名称空间包含在页面顶部,并直接使用
WebMethod

干杯

故障排除

  • 您应该删除方法名并按如下方式放置页面的url
  • url:“ShoppingCart.aspx”,

    在Page_load事件上放置一个断点,如果它到达断点,这意味着您的url很好,现在您可以使用方法名放置完整的url

    url: "ShoppingCart.aspx/deleteSelectedProduct/",
    
    现在你可以检查你的方法有什么问题,下面是可能的解决方案

  • 您的方法
    deleteSelectedProduct
    应该是静态方法
  • 您需要
    [WebMethod]
    在功能上方进行装饰
    deleteSelectedProduct
  • 排除故障

  • 您应该删除方法名并按如下方式放置页面的url
  • url:“ShoppingCart.aspx”,

    在Page_load事件上放置一个断点,如果它到达断点,这意味着您的url很好,现在您可以使用方法名放置完整的url

    url: "ShoppingCart.aspx/deleteSelectedProduct/",
    
    现在你可以检查你的方法有什么问题,下面是可能的解决方案

  • 您的方法
    deleteSelectedProduct
    应该是静态方法
  • 您需要
    [WebMethod]
    在功能上方进行装饰
    deleteSelectedProduct
  • 您必须使用
    System.Web.Services.WebMethod
    中的
    WebMethod
    来装饰C#函数,该方法将位于
    System.Web.Services.WebMethod