如果我有:
m => m.OwnedCollection(p => p.Addresses)
和
m => m.OwnedCollection(p => p.Contacts)
我想将它们组合成:
m => m.OwnedCollection(p => p.Addresses).OwnedCollection(p => p.Contacts)
有没有办法做到这一点?
我还希望能够结合:
m => m.OwnedCollection(p => p.Contacts)
和:
with => with.AssociatedCollection(p => p.AdvertisementOptions)
成为:
m => m.OwnedCollection(p => p.Contacts, with => with.AssociatedCollection(p => p.AdvertisementOptions))
有没有办法做到这一点?
我希望这些是相当简单的要求,但我发现很难掌握这些术语。
一些背景:
我正在使用https://github.com/refactorthis/GraphDiff来支持合并实体以进行更新。问题是它期望一个描述实体关系的表达式树被更新,例如。
context.UpdateGraph(company, map => map
.OwnedCollection(p => p.Contacts, with => with
.AssociatedCollection(p => p.AdvertisementOptions))
.OwnedCollection(p => p.Addresses)
);
我的需要是一个通用的解决方案,所以我需要使用反射检查我的实体类型的各种一对一、一对多和多对多关系,并将它们转换为表达式树。
对我的具体问题或一般帮助的任何帮助将不胜感激。