Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自动映射循环引用_C#_.net_Automapper 5 - Fatal编程技术网

C# 自动映射循环引用

C# 自动映射循环引用,c#,.net,automapper-5,C#,.net,Automapper 5,我有两个目标 class Order{ public List<Case> Cases {get;set;} } class Case { public Order Order {get;set;} 类顺序{公共列表案例{get;set;} 类Case{公共秩序{get;set;} 我使用Automapper5.2.0映射它们 CreateMap<CustomerOrder, Order>().PreserveReferences() .ForMember(d=>

我有两个目标

class Order{ public List<Case> Cases {get;set;} }
class Case { public Order Order {get;set;}
类顺序{公共列表案例{get;set;}
类Case{公共秩序{get;set;}
我使用Automapper5.2.0映射它们

CreateMap<CustomerOrder, Order>().PreserveReferences()
.ForMember(d=>d.Case, o=>o.MapFrom(s=>s.Case));

CreateMap<OrderCase, Case>().PreserveReferences()
.ForMember(d=>d.Order, o=>MapFrom(s=>s.Order))
CreateMap().PreserveReferences()
.ForMember(d=>d.Case,o=>o.MapFrom(s=>s.Case));
CreateMap().PreserveReferences()
.ForMember(d=>d.Order,o=>MapFrom(s=>s.Order))
获取循环引用和堆栈溢出

更新 不完全是

当我映射订单时,我需要接收包含多个案例的订单

  • 命令
    • 案例(.Order必须为null或引用父订单)
    • 案例(相同)
此外,当我映射案例时,我需要填写相应的订单

  • 案例
    • 订单(无案例)

我想你需要让automapper忽略其中的一个,自己处理。或者检查这个:可能是你提到的帖子中我尝试过的解决方案的副本,但不幸的是,这不是我所需要的。我会在几分钟内更新我的帖子以澄清这听起来像上一个帖子中的解决方案吗?当我映射案例时,顺序为空