我正在寻找类似的东西:
WorkItem item = CompositeUI...GiveMeTheWorkItem(this);
我继承的代码是将根工作项注入到所有看起来有点冗长的东西中。
我正在寻找类似的东西:
WorkItem item = CompositeUI...GiveMeTheWorkItem(this);
我继承的代码是将根工作项注入到所有看起来有点冗长的东西中。
我想我也不妨试着为你回答这个问题。根据我的经验,我不得不说您上面描述的内容在基本 CAB/SCSF 框架中不可用。
RootWorkItem 包含由您的应用程序创建以处理特定用例场景的子 WorkItem 的集合。每个 WorkItem 都包含一个智能部件集合,您可以使用 WorkItem.SmartPart 集合公开的 Get 或 Contains 方法检查 WorkItem 是否包含特定的 SmartPart。
虽然我同意你的观点,将 RootWorkItem 注入所有东西有点“啰嗦”,但如果你为你的 WorkItems 使用 WorkItemController 基类(你应该这样做),那么这是在基类中为你完成的。
作为一种可能的解决方案,您可以使用某种 FindSmartPart 方法扩展 WorkItemController 基类,该方法可以遍历 RootWorkItem 类的 WorkItem 集合并使用上述方法搜索 SmartPart。
希望有帮助。