調用Ajax返回500錯誤的解決方法


看代碼:

 1   public ActionResult UserLogin(LogOnModel model)
 2         {
 3             #region 驗證碼驗證
 4             
 5             #endregion
 6 
 7            OperationResult result=   _identity.ValidateUser(model.UserName, EncryptAndDecrypte.EncryptString(model.Password));
 8 
 9 
10            if (result.ResultType==OperationResultType.Success)
11             {   //登陸成功
12                 SysUser user = (SysUser) result.Data;
13                 //Account account = new Account
14                 //{
15                 //    PersonName = user.UserName,
16                 //    Name = user.NickName,
17                 //    Id = user.Id
18                 //};
19                 _sysAuthenticationService.SignIn(user,false);
20                // Utils.WriteCookie("account",account,7);
21 
22                 result.Data = null;
23             }
24 
25             return Json(result);
26         }

我就是ajax調用的這個類方法,從方法中看不出任何問題,我們看26行的,他是將一個對象序列化JavaScript的表示,在我的理解中,它應該會將result對象序列化為json對象的表示形式,

這樣在系統內部轉換的時候就出現問題了,出現了循環引用的報錯。所有我將result.Data 設置為空,解決問題。

所以最終的原因是出來SysUser這個類上,先Mark下。有時間在解決了、


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM