asp.net 网络方法无效

asp.net Web Method not working

我尝试在我的网络项目中调用网络方法。我没有在我的代码中发现问题,我之前调用过 webmethod 数千次,但我以前从未见过这样的错误。永远不要输入我的方法代码,它 return 我的 html 页面代码给我。 (对不起,我的英语不好 :))。请有人帮助我。

我的Web方法代码:

[WebMethod]
    public static string GirisKontrol(string UserName, string Pass)
    {
        try
        {
            string strSonuc = "";
            var context = new DBEntities();
            var Kisi = context.users.Where(t => t.eposta== UserName  && t.sifre == Pass).FirstOrDefault();
            if (Kisi != null && Kisi.uye_onay==1)
            {
                HttpContext.Current.Session["UyeID"] = Kisi.ID;
                HttpContext.Current.Session["Gorev"] = Kisi.gorev;


                return Kisi.adsoyad;
            }
            else
                return "0";
        }
        catch (Exception ex)
        {
            return "";
        }
    }

我的javascript代码:

 function GirisKontrol() {
            PageMethods.GirisKontrol("asd", "sad", function(a) {
                alert(a);
});
}

或者我尝试了这个但得到了相同的结果:

function test() {
        $.ajax({
            type: "POST",
            url: "indexDeneme.aspx/GirisKontrol",
            data: "{}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (msg) {
                alert(msg);
            }
        });
    }

这是结果,它永远不会出现在 c# 代码中: enter image description here

试试这个:

[WebMethod(EnableSession=true)]

否则您的方法将无法访问当前 SessionState,并且您尝试将数据保存到 Session 的部分将不起作用。

您调用 PageMethods.GirisKontrol 的第一个示例不清楚 - 您的 JavaScript 不会了解服务器端方法。

使用 Ajax 的第二个示例看起来更接近,但您没有传递任何数据。

data: "{}",

也许你是这个意思:

data: "{'UserName': 'asd', 'Pass': 'sad'}",