Неизвестный веб-метод при выполнении AJAX-вызова WebMethod с ASP.NET - PullRequest
0 голосов
/ 16 ноября 2018

Я новичок в использовании AJAX-вызова WebMethod. Я чувствую, что моя логика веб-метода такова, но, возможно, кто-то может помочь здесь Я получаю неизвестную ошибку веб-метода, когда регистрирую ответ AJAX на консоль. Ниже мой веб-метод и код вызова AJAX.

$("#btnLogin").click(function () {
    email = $("#txtEmailAddress").val();
    password = $("#txtPassword").val();

    //Create the login info object
    var loginInfo = {};
    //Set the object properties and value
    loginInfo.Email = email;
    loginInfo.Password = password;
    //Make the ajax call
    $.ajax({
         type: "POST",
         dataType: 'json',
         url: '<%=ResolveUrl("identicate.aspx/ValidateUsersToken") %>',
         data: '{loginInfo:' +  JSON.stringify(loginInfo) + '}',
         contentType: "application/json; charset=utf-8",
         success: function (data) {
             if (data.d == null || data.d == undefined)
             {
                 alert("Username or password not correct = " + data.d);
                 console.log(data);
                 console.log(loginInfo);
                 console.log(this.url);
             }
         },
         error: function (data) {
              console.log(data);
              console.log(loginInfo);
              console.log(this.url);
              alert(data.d);
         }
     });
});

А вот мой веб-метод

[WebMethod]
public static String ValidateUsersToken(iloginmodel loginInfo)
{
        //Variable to hold the user email address
        String email = string.Empty;
        //Get the connection string from config file
        String connectionString = iDbConfiguration.GetConnectionString();
        //Create the command text
        String commandText = "select Email, Password from VUser where Email = @Email & Password = @Password";
        //Create database connection object and open it
        using(SqlConnection loginConnection = new SqlConnection(connectionString))
        {
            //Set command paramters
            SqlCommand loginCommand = new SqlCommand(commandText, loginConnection);
            //Set command type to text
            loginCommand.CommandType = System.Data.CommandType.Text;
            //Add parameter to command
            loginCommand.Parameters.AddWithValue("Email", loginInfo.Email);
            loginCommand.Parameters.AddWithValue("@Password", loginInfo.Password);

            //Open the database connection
            try
            {
                loginConnection.Open();

                SqlDataReader loginReader = loginCommand.ExecuteReader();
                if(loginReader.HasRows)
                {

                    HttpContext.Current.Response.Write(loginReader.ToString());

                    while (loginReader.Read())
                    {
                        if (loginReader.HasRows)
                        {
                            email = loginReader["Email"].ToString();
                        }
                    }
                }
            }
            catch(SqlException sqlEx)
            {
                HttpContext.Current.Response.Write(sqlEx.Message);
            }
            finally
            {
                loginConnection.Close();
            }

        }
    return email;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...