500 Произошла внутренняя ошибка сервера при вызове webmethod через ajax. Это происходит только на работающем сервере, все работает нормально на localhost - PullRequest
0 голосов
/ 05 октября 2019

Я пытался получить доступ к состоянию доступности пользователя из таблицы базы данных с помощью вызова ajax в моем веб-приложении asp.net. Он отлично работает на моем локальном сервере, но выдает исключение при развертывании на работающем сервере.

Мой код ajax

<script>
    function GetUserAvailability()
    {
        {
            $.ajax({
                type: "POST",
                url: "myfile.aspx/myfunction",
                contentType: "application/json; charset=utf-8",
                data: "{'UserName':'" + document.getElementById('<%=txtUserName.ClientID%>').value + "'}",
                dataType: "json",
                success: function (response) {
                    document.getElementById('<%=lblStatus.ClientID%>').innerHTML = response.d;
                    if (response.d == "Available") {
                        document.getElementById('<%=lblStatus.ClientID%>').style.color = "green";
                        var btn = document.getElementById("<%=btnSave.ClientID%>");
                        btn.disabled = false;
                    }
                    else {
                        var btn = document.getElementById("<%=btnSave.ClientID%>");
                        btn.disabled = true;
                        document.getElementById('<%=lblStatus.ClientID%>').style.color = "red";
                    }
                },
                failure: function (response) {
                    alert(response.d);
                }
            });
        }
    }
</script>

Мой WebMethod

[WebMethod]
public static string myfunction(string UserName)
{
    Myclass db = new Myclass();
    string AvailableStatus = "Available";
    if (db.GetDetails("Tablename", "Column", "column='" + UserName.TrimEnd().TrimStart() + "'").Tables[0].Rows.Count > 0)
    {
        AvailableStatus = "Not Available";
    }

    return AvailableStatus;
}

Но, к сожалению, я получил код ошибки 500 внутренняя ошибка. Следующие сообщения об ошибках

[NullReferenceException: Object reference not set to an instance of an object.]
System.Web.Handlers.ScriptModule.OnPostAcquireRequestState(Object sender, EventArgs eventArgs) +230


System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +138


 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +194


 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +87

Любая помощь приветствуется

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