我有一个控制某些发射器和声卡的winform应用程序。需要能够提供用于控制这些设备的Web界面。
目前我使用WCF从我的asp.net MVC站点中的控制器与winform应用程序进行通信。这很好用,但现在需要在需要时将硬件移动到另一台机器上,这意味着必须在该机器上安装和设置IIS。
我知道这并不难,但我不会是那个真正感动的人。它将是用户。如果我可以从winform应用程序托管该网站,除了硬件驱动程序需要我们使用的USB转串口转换器之外,它基本上是可移植的。
答案 0 :(得分:1)
您可以使用Windows服务吗?整个winforms app即服务对我来说似乎不对。它假定应用程序始终在运行。我将创建一个Windows服务并从中公开WCF端点。
答案 1 :(得分:1)
您需要安装IIS或Cassini来托管MVC网站。没有办法解决这个问题。
答案 2 :(得分:1)
此外,使您的应用程序IIS依赖并没有那么糟糕。或卡西尼依赖。您不希望最终编写自己的网络服务器,这在您继续向应用添加功能时很容易发生。
我不了解你,但只是感觉你自己承受了所有的负担,你将花费几十个小时的时间来实现它,为一个不想安装的人节省一两个小时真实的网络服务器。
答案 3 :(得分:0)
如果您想在Winforms下托管MVC,那么我会研究即将发布的.netcore 3版本,该版本应允许这种组合。
尽管您必须等到2019年第一季度 https://github.com/dotnet/core/blob/master/roadmap.md
否则,如果我想在winform应用程序中使用它,我通常会使用nhttp库托管simper。
(NHTTP是一个库,为您提供了非常简单的原始http请求功能,因此可悲的是没有mvc,但它适用于simnpler的东西)