我有一个对象A的集合.每个A都有一个与对象B相关的字段 – 我有另一个集合.换句话说,每个B都附加到As集合的子集(但仅在概念上,而不是在代码中).该字段 – 将A与B相关联 – 可在系统寿命期间发生变化.存在阻止改变该结构的系统要求.
如果我需要在每个B的A集上重复执行操作,那么重复使用A集合上的Where()方法或创建B拥有的另一个集合以及管理相关的添加和删除的类会更好吗项目.
让我看看我是否可以在代码中捕获它:
class A { public B owner; ... } class B { ... } class FrequentlyCalledAction { public DoYourThing(B current) { List<A> relevantItems = listofAllAItems.Where(x => x.owner == current).ToList() foreach (A item in relevantItems) { ... } } }
VS:
class A { public B owner; ... } class B { public List<A> itsItems; } class FrequentlyCalledAction { public void DoYourThing(B current) { foreach (A item in current.itsItems) { ... } } } class AManager { public void moveItem(A item,B from,B to) { from.itsItems.remove(item); to.itsItems.add(item); } }
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。