首页 > 解决方案 > 登录 asp.net mvc 时出现 500 内部服务器错误

问题描述

我的 Web 应用程序在本地服务器上正常工作几乎没有问题。但是,当我在登录时将其托管在 plesk 在线托管/服务器上时,我收到 POST 500 内部服务器错误。

这是我的 javascript 控制器和 HTML 代码。

Javascript:

<script src="~/Content/AdminContent/assets/js/jquery-2.1.4.min.js"></script>

<script>
    $(function () {

                $("#userloginform").submit(function (e) {
                    e.preventDefault();
                    $.post($("form").attr("action"), $("form").serialize())
                        .done(function (response) {
                            if (response.status === 'success') {
                                window.location.href = '@Url.Action("Dashboard", "More")';
                            } else {
                                alert("Login failed");
                            }
                        });
                });
            });
</script>

HTML:

<form id="userloginform" action="/Home/Login" method="post">
                                            @Html.AntiForgeryToken()
                                            <fieldset>
                                                <label class="block clearfix">
                                                    <span class="block input-icon input-icon-right">
                                                        @Html.TextBoxFor(m=>m.Name, new { @class = "form-control", placeholder = "Username" })
                                                        <i class="ace-icon fa fa-user"></i>
                                                    </span>
                                                </label>

                                                <label class="block clearfix">
                                                    <span class="block input-icon input-icon-right">
                                                        @Html.TextBoxFor(m=>m.Password, new { @class = "form-control", placeholder = "Password", type = "password" })
                                                        <i class="ace-icon fa fa-lock"></i>
                                                    </span>
                                                </label>

                                                <div class="space"></div>

                                                <div class="clearfix">
                                                    <label class="inline">
                                                        <input type="checkbox" class="ace" />
                                                        <span class="lbl"> Remember Me</span>
                                                    </label>

                                                    <button type="submit" class="width-35 pull-right btn btn-sm btn-primary">
                                                        <i class="ace-icon fa fa-key"></i>
                                                        <span class="bigger-110">Login</span>
                                                    </button>
                                                </div>

                                                <div class="space-4"></div>
                                            </fieldset>
                                        </form>

控制器:

[HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Login(tbl_users user)
        {
            if (ModelState.IsValid)
            {
                    var obj = _context.tbl_users.Where(a => a.Name.Equals(user.Name) && a.Password.Equals(user.Password)).FirstOrDefault();
                    if (obj != null)
                {
                    Session["UserID"] = obj.ID.ToString();
                    Session["UserName"] = obj.Name.ToString();
                    Session["EmpId"] = obj.Employee_ID;
                    Session["EmpName"] = obj.tbl_employeeinformation_a.FirstName;
                    Session["EmpLastName"] = obj.tbl_employeeinformation_a.LastName;
                    Session["EmpLocation"] = obj.tbl_employeeinformation_a.Country_ID;
                    Session["JoinedDate"] = obj.tbl_employeeinformation_a.JoinedDate;

                    var dob = obj.tbl_employeeinformation_a.DateOfBirth;

                   // string text = CalculateYourAge(Convert.ToDateTime(dob));
                    int age = CalculateAge(Convert.ToDateTime(dob));
                    Session["Dob"] = age;


                    return Json(new { status = "success" });
                }
            }
            return Json(new { status = "failed" });
        }

标签: javascriptjqueryasp.netinternal-server-errorhttp-status-code-500

解决方案


推荐阅读