【发布时间】:2011-04-13 21:35:13
【问题描述】:
我想构建一个可以安装在用户计算机上的 WPF Web 应用程序。因此,任何托管要求都将取决于用户的任何配置。托管 WPF 应用程序有哪些要求?
- 可以使用任何操作系统吗?
- 机器上是否需要安装.Net框架?
- 显然必须安装一些网络服务器,该技术对网络服务器有什么限制?必须是 IIS 吗?
- 还有别的吗?
【问题讨论】:
我想构建一个可以安装在用户计算机上的 WPF Web 应用程序。因此,任何托管要求都将取决于用户的任何配置。托管 WPF 应用程序有哪些要求?
【问题讨论】:
WPF 是一种客户端技术——不是真正的“托管”技术。通常,您会使用Windows Communication Foundation (WCF) 作为服务提供者。
对于上述两种技术中的任何一种,系统都需要安装适当的 .NET 框架。 (如果您以 .NET 3.5 为目标,则需要 .NET 3.5 等。)WPF 需要 Windows 操作系统,因为 Mono 项目不支持它。 WCF is partially supported via Mono 但在其他平台上。
【讨论】:
你会想要查看Windows Communication Foundation。它可以接受任何 .NET 应用程序并在其中托管 Web 服务(通过各种绑定)。
任何可以承载 WCF(.NET Framework 3 及更高版本)的操作系统都应该足够了。显然,在客户端机器上公开 Web 服务会产生安全隐患/限制。
【讨论】:
你说的是 WPF 还是 WCF ??
Windows Presentation Foundation 是 xaml 代码中的“Windows 窗体”,Windows Comunication Foundation 是 ASMX 和 WSE Web 服务的下一步。
你的写作方式,你在谈论 WCF 而不是 WPF。
WPF 是一个 Windows 应用程序,可以在任何安装了 .NET Framework 3.0+ 的 Windows 计算机上运行
WCF 是一个服务应用程序,我会给你一个更好的答案,指向我在问题中的答案:
我希望这是你想要的。
【讨论】:
这和之前的问题一样,用 WPF 替换 Silveright。基本上相同的答案是正确的,但是内置的内容要少一些,以使您更容易;您仍然需要向与客户端无关的 服务器 发出请求。您还可以使用 .Net 框架的全部功能,而 Silverlight 只有一个较小的子集(不是真正子集,但我想你可以这么说)。这意味着客户端只需要安装 .Net 框架。
至于客户端可以连接的服务器,它可以是任何东西,但它真的取决于你用它做什么。如果您想提供通用文件或标准 Web 服务,是的,任何 Web 服务器都可以做到这一点。由客户端(WPF 应用程序)解释它从服务器接收到的数据。
在使用 WPF 时,您通常会受限于 Windows 操作系统,请参阅其他答案。
然而,WPF 浏览器应用程序 (BAP) 并不是一项真正伟大的技术(不过,自从我上次看到它以来,它可能已经成熟了一点,那是很久以前的事了);如果用户必须将它安装在他的计算机上,那么为什么还要将它放在浏览器中呢?通过单击一次或其他方式部署它。
【讨论】: