目前用.net做了一个关于投资的项目,在测试时某一模块遇到了很头疼的问题。Ajax请求后台一直回调error。无法解决。还是希望各位能帮我找找问题。下面贴上代码。(创建的功能,MVC+EF)
ajax:后台接收 public ActionResult Create()
        {
            var user = this.GetCurrentUser();
            ApplyBillModel appmodel = new ApplyBillModel();
            return View(appmodel);
        }        [HttpPost]
        public ActionResult Create(ApplyBillModel viewmodel)
        {
            var user = this.GetCurrentUser();
            ApplyBill model = new ApplyBill();
            try
            {
                if (viewmodel.App_referRID == null)
                {
                    return Json(new OperationResult(OperationResultType.Error, "请选择项目批次!"));
                }
                else
                {
                    var userinfo = db.UserInfo.FirstOrDefault(e=>e.UserNumber == viewmodel.UserNumber);
                    if (userinfo == null)
                    {
                        return Json(new OperationResult(OperationResultType.Error, "该员工不存在!"));
                    }
                    else
                    {
                        var modelcheck = db.ApplyBill.FirstOrDefault(t => t.App_referRID == viewmodel.App_referRID && t.App_referUID == userinfo.UserID);
                        if (modelcheck!=null)
                        {
                            return Json(new OperationResult(OperationResultType.Error, "报名单已存在!"));
                        }
                        //更新主表
                       
                        model.AppCreated = DateTime.Now;
                        // ...
                        model.App_referUID = userinfo.UserID;
                        model.AppSureAmount = 0;
                        model.AppSureLoan = 0;
                        db.Configuration.ValidateOnSaveEnabled = false;
                        db.ApplyBill.Add(model);
                        var save = db.SaveChanges();
                    }
                }
                return Json(new OperationResult(OperationResultType.Success, "创建成功"));
            }
            catch (Exception ex)
            {
                return Json(new OperationResult(OperationResultType.Error, "创建失败"));
            }
        }
        #endregion错误
后台接收信息的Action Create不能跳进
ajax报错:(地址是正确的,一直无法找到,其他功能的创建功能均能使用) 
Failed to load resource: the server responded with a status of 404 (Not Found)
Create:197 POST http://localhost:12346/PC/ApplyBill/Create 500 (Internal Server Error)

解决方案 »

  1.   

    为啥你不用@Url.Action("Create"),而是用js获取?
      

  2.   

    为啥你不用@Url.Action("Create"),而是用js获取?
      

  3.   

    我觉得是方法名重复了,
    你可以试试删除其中一个create方法,看看是不是这个问题
      

  4.   

    500 是服务端拒绝响应,显然是出现了严重错误ajax 虽然难以调试,但你可用一表单先测试一下服务端能否正确响应
      

  5.   

    既然是 Ajax请求后台一直回调error,那么为何不看看有什么样的错误信息