C#ASP.net Razor AJAX调用方法不起作用

时间:2017-05-01 21:07:44

标签: c# jquery asp.net ajax razor

首先,我不使用MVC(不要问为什么)

从阅读其他帖子看来,我似乎需要使用“WebMethod”方法,但我似乎无法使我的功能正常调用。

Chrome控制台给我一个404错误"Cannot find /ajax/TestAjax"。所以我知道我没有正确定位功能。但我似乎无法找到把它放在哪里。

非常感谢任何建议!


文件位置:

enter image description here

jQuery代码:

$("#btn_adduser").click(function () {
        var isValid = validateAddUser();
        if (isValid.length > 2) {
            alert(isValid);
        }
        else {
            $.ajax({
                type: "POST",
                url: "/ajax/TestAjax",
                data: "",
                success: function (data) {
                    alert(data);
                }
            });
        }
    });

C#代码:(ajax.cs)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

/// <summary>
/// Summary description for ajax
/// </summary>
public class ajax
{
    public ajax()
    {

    }

    [WebMethod]
    public static string TestAjax()
    {
        return "All Good";
    }

}

2 个答案:

答案 0 :(得分:1)

[WebMethod]是一种Web表单功能;它不会帮助你。

您可以创建ASHX(Generic Handler)文件,也可以使用MVC / Web API。

答案 1 :(得分:1)

[WebMethod]是一种Web窗体功能。 在 ASP.NET Razor网页中,您可以关注RESTful服务的this链接。