有关使用COM的应用程序构建前端的提示

时间:2010-11-22 01:50:04

标签: c# winforms architecture com

我正在构建一个与正在运行的应用程序交互的WinForms应用程序。此应用程序接受COM命令与实时实体(对象)进行交互。

我的问题是;编写这样的应用程序的最佳方式(设计/架构明智)是什么?我不需要编写类/接口来代表现有应用程序对象模型中描述的实体。截至目前,我只有Visual Studio为我(及其设计器类)创建的表单类包含我的所有逻辑..建议是什么?我从来没有真正实现MVC / MVP,这是这样的情况吗?

1 个答案:

答案 0 :(得分:1)

免责声明:我一生中从来没有针对COM对象开发过。

问题:您正在构建的WinForms应用程序与它正在调用的基于COM的应用程序之间的关系是什么?

从架构上讲,如果Winform应用程序比COM应用程序更长时间,那么你将需要在WinForm的应用程序和COM应用程序之间使用某种形式的抽象 - 这样当COM应用程序消失时它就会消失使用任何替换COM应用程序的任何东西都不难重复使用WinForm应用程序。

如果WinForms应用程序的生活理由是COM应用程序那么它可能不值得(但我几乎倾向于此)。

在最基本的层面上,为WinForm解决方案添加一个新的类库,并将所有的com依赖项和代码放在那里;然后,您的WinForm应用程序将引用此项目。如果你想要更整洁,你可以使用接口,依赖性反转等。