2008-11-25 44 views
0

我在我的域模型一类叫做如何转换Parent to Child?

JobPlan 

这个类存储/ ORM通过检索和各种场所使用。

我正在创建一个视图,显示此类的一个treelist,并且treelist需要此类来实现某个接口(接口来自第三方lib)。然而,将接口添加到JobPlan类将强制使用此类的所有程序集也引用第三方控件。这并不理想。

我想有

JobPlanPresenter 

会简单地继承JobPlan并实现该接口的方法。这将导致我如何将JobPlan(父)转换为JobPlanPresenter子级的问题。我显然可以创建一个转换器类,它只是将父类中的所有字段复制到子类中,但对我来说这似乎是一个相当丑陋的黑客攻击,它也会终止原始对象上的所有更新等。

你觉得还有别的办法吗?我完全错过了什么吗?

回答

1

一个解决方案是让JobPlanPresenter持有对JobPlan的引用。然后,JobPlanPresenter只是JobPlan的一个包装器,引用了JobPlan和JobPlan的子JobPlanPresenter包装器。

+0

谢谢。这实际上是一个整洁的想法。我想在考虑这个问题时,我会被继承蒙蔽。再次感谢。 – 2008-11-25 12:06:41

相关问题