亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

循環引用在將對象序列化為JSON時檢測到異常

循環引用在將對象序列化為JSON時檢測到異常

C#
蠱毒傳說 2019-10-19 15:54:45
就像這篇文章中提到的那樣,我在序列化實體框架代理時遇到了Json序列化錯誤:序列化類型為'System.Data.Entity.DynamicProxies.PurchaseOrder_446B939192F161CDBC740067F174F7A6059B0F9C0EEE68CD3EBBD63CF9AF5BD0'的對象時,檢測到循環引用。但是不同之處在于,我的實體中沒有循環引用,并且僅在我們的生產環境中發生。在本地,一切正常...我的實體:public interface IEntity{    Guid UniqueId { get; }    int Id { get; }} public class Entity : IEntity{    public int Id { get; set; }    public Guid UniqueId { get; set; }}public class PurchaseOrder : Entity{    public string Username { get; set; }    public string Company { get; set; }    public string SupplierId { get; set; }    public string SupplierName { get; set; }    public virtual ICollection<PurchaseOrderLine> Lines { get; set; }}public class PurchaseOrderLine : Entity{    public string Code { get; set; }    public string Name { get; set; }    public decimal Quantity { get; set; }}我的PurchaseOrderController上的GetCurrent操作引發異常:public class PurchaseOrderController : Controller{    private readonly IUnitOfWork _unitOfWork;    public PurchaseOrderController(IUnitOfWork unitOfWork)    {        _unitOfWork = unitOfWork;    }    public JsonResult GetCurrent()    {        return Json(EnsurePurchaseOrder(), JsonRequestBehavior.AllowGet);    }    private PurchaseOrder EnsurePurchaseOrder()    {        var company = RouteData.GetRequiredString("company");        var repository = _unitOfWork.GetRepository<PurchaseOrder>();        var purchaseOrder = repository                .Include(p => p.Lines)                .FirstOrDefault                (                    p => p.Company == company &&                          p.Username == User.Identity.Name                );        if (purchaseOrder == null)        {            purchaseOrder = repository.Create();            purchaseOrder.UniqueId = Guid.NewGuid();            purchaseOrder.Company = company;            purchaseOrder.Username = User.Identity.Name;            _unitOfWork.SaveChanges();        }        return purchaseOrder;    }}
查看完整描述

3 回答

  • 3 回答
  • 0 關注
  • 627 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號