【发布时间】:2010-01-12 16:06:47
【问题描述】:
我的解决方案中有三个 c# 项目。一个是控制台应用程序,它只是调用类库项目。类库项目为应用程序执行所有处理。然后是一个显示表单的 WinForm 项目,然后当按下按钮时,调用类库项目中的相同逻辑。因此,有两种方法可以运行逻辑,通过控制台或通过 Windows UI (WinForm)。
我的问题是类库逻辑的一部分,如果正在使用 UI 应用程序,我希望出现一个自定义 WinForm 表单来向用户提问。
在控制台应用程序中,我希望在逻辑中的相同位置简单地写入控制台。在我对架构的理解中,您不希望类库项目包含 WinForm 逻辑并要求它具有对所有 WinForm 引用的引用。但是如何调用 WinForms 项目(或其他)来显示自定义 WinForm 表单?将有一个循环引用,其中类库将引用主 WinForm 应用程序,而 WinForm 应用程序将引用类库项目。
这样做的标准方法是什么?
【问题讨论】:
-
我认为它是您的类库中的一个事件,并在您的 UI 代码(无论是控制台还是 Winforms)中实现一个侦听器。
标签: c# winforms architecture console