0

我编写了一个 Windows 窗体 (.NET C#) 应用程序,它对视频进行编码,本质上是 ffmpeg 的 GUI。需求发生了变化,我们现在想要将 UI 移动到网页,并将编码作为 Windows 服务完成。

以下要求也适用:

  • 浏览器的网页和服务之间的双向通信(即使用网页界面开始编码并让服务通知进度回网页)
  • 服务也应该移植到 Mac OS X
  • UI 应该是一个标准的网页(应该由 HTML/CSS/JavaScript/Flash 等组成...)

我正在考虑将 WCF 用于 Windows 服务,但我的 WCF 经验为零。WCF 会为网页和服务之间的双向通信提供良好的基础吗?

此外,我需要考虑将服务移植到 Mac OS X,并且我注意到 WCF 仅在 Mono 中部分实现(请参阅http://www.mono-project.com/WCF_Development)。这会是一个问题吗?有人对 Mono 中的 WCF 开发有任何经验吗?

满足上述要求的最佳途径是什么?我很想听听任何建议...

编辑 我应该澄清 - 这不是一个网络应用程序,它将完全在客户端运行。

服务应该在客户端运行并与浏览器内的网页交互(这也是客户端)。

4

1 回答 1

0

如果您想要 HTML 中的 UI——这就是“网页 UI”对大多数人来说意味着什么——那么 WCF 是错误的方法。WCF 用于创建高度互操作(WS-* 标准)的客户端和/或服务器;不适用于网页。

更好地了解 ASP.NET MVC。这是一个与 WinForms 非常不同的模型,1但可以轻松地从将 UI 呈现为 HTML 到为 Web API 生成 XML 或 JSON(在 Web UI 或本机客户端的 AJAX 之后)。

据我了解,Mono 基本上支持 ASP.NET MVC;并且现在大部分 ASP.NET 都是开源的,这应该会变得更容易。

另请参阅昨天的这个答案


1 WinForms 会少一些移动,但是如果没有另一项技术转变,那么 API 方面会更难(尽管 ASP.NET WebForms 和 MVC 可以很容易地混合在一个 Web 应用程序中)。

于 2012-07-22T16:35:55.900 回答