M2DOC:如何传递对象集合
Posted
技术标签:
【中文标题】M2DOC:如何传递对象集合【英文标题】:M2DOC : How to pass a collection of objects 【发布时间】:2020-03-27 22:29:00 【问题描述】:是否可以将对象列表 (PhysicalComponent) 传递给我的自定义服务以阻止我遍历所有 PhysicalComponent ?
实际上我在我的 M2DOC 模板中这样迭代:
m:for pc | self.eAllContents(pa::PhysicalComponent)
m:pc.MatrixFlow()
m:endfor
【问题讨论】:
【参考方案1】:您可以使用以下签名创建服务:
public SomeReturnType myService(List<PhysicalComponent> components)
...
或
public SomeReturnType myService(Set<PhysicalComponent> components)
...
或
public SomeReturnType myService(Collection<PhysicalComponent> components)
...
那么你可以这样称呼它,例如:
m:self.eAllContents(pa::PhysicalComponent)->myService()
箭头表示将集合传递给服务,点表示在集合的每个元素上调用服务。
如果您使用 Set 的 List 作为第一个参数,您可能需要使用 asSequence() 或 asOrderedSet():
m:self.eAllContents(pa::PhysicalComponent)->asSequence()->myService()
或
m:self.eAllContents(pa::PhysicalComponent)->asOrderedSet()->myService()
【讨论】:
以上是关于M2DOC:如何传递对象集合的主要内容,如果未能解决你的问题,请参考以下文章
如何将 .NET 对象集合(父子)层次结构传递给 SQL Server 存储过程
如何使用graphql将mongodb中多个集合中的数据传递到1个反应表