2

除了人们可以在可能熟悉的浏览器中查看应用程序这一事实之外。是否有任何实际令人信服的理由在 WPF 中使用 XBAP 模型而不是直接独立的 WPF 应用程序。

我所能看到的只是潜在的安全问题和限制,但没有任何好处。我错过了什么吗?

4

6 回答 6

3

我曾经使用过 XBAP。

我们需要完全信任,并且我们需要应用程序像浏览器托管一样运行。XBAP 是我们唯一真正的选择,我很高兴它在那里。

在这个小缝隙之外,Silverlight & Click Once 是更好的选择。

于 2009-12-21T06:15:08.393 回答
1

如果您需要运行 WPF 客户端而不需要管理员权限并且无需在客户端计算机上安装任何东西(忽略用户的配置文件缓存),则使用部分信任的 XBAP 很有用

于 2012-04-19T07:47:39.220 回答
1

在实践中,否和否将是您问题的答案。我从未真正看到它们在生产中使用过,也没有真正合理的理由使用它们。

正如 Kent 提到的,Silverlight 或 Click Once 几乎总是更好的选择。

有人可能会说,在完全信任的仅限 Windows 的环境中,XBAPS 使您能够利用完整的 WPF 框架和 Web 部署的灵活性。当然,这就是 Click once 的目的。然而,根据我的经验,ClickOnce 对任何一个简单的、单一的应用程序安装来说都是一场噩梦,因此您可能会赞成 XBAP 以避免 ClickOnce 的麻烦。

但同样,我的回答是,Silverlight 可能是一个更好的选择。

于 2009-12-21T06:11:26.443 回答
1

我们使用它为可以在浏览器中运行但也可以作为桌面应用程序运行的应用程序提供单一来源的解决方案。双方完全信任。

于 2010-04-13T10:44:00.347 回答
1

实际上,由 xbap(s) 组成的模块化设计应用程序通过 web 服务进行通信是非常有效的。这种类型的场景将允许模块化部分的执行在单独的内存空间中并发运行。这有利于用户和应用程序的开发人员。

该应用程序不会在 ie 中运行,而是在自定义浏览器外壳中运行,以控制应用程序本身的流程和执行。当一切都可以简单地在单个或多个项目中运行时,看起来确实需要做很多工作,但这种类型的解决方案将适用于大型企业应用程序。应用程序程序员将能够在包含不同功能、实用程序和能力的应用程序的细分或不同部分上工作。用户永远不会知道或意识到每个部分实际上是独立运行的,因为它看起来是无缝的。由于 shell 不是 xbap 并且具有完全权限,因此消除了部分信任问题。现在到了好东西......如果碰巧有一个错误(这永远不会发生对吗?)应用程序的其他部分继续执行而不会失败。Try-catch-finally 工作得很好,直到你错过一个......最后但并非最不重要的是,它在浏览器中不再复杂的后台线程处理,默认情况下是异步的。大多数系统会同时打开多个窗口,每个窗口只包含一个运行 xbap 的浏览器。独特...是...有用...是...这是一种不同的方法,但它干净简单。

人生就是一场比赛……当你到达终点线时,谁会为你欢呼,你会为那场比赛感到自豪吗?

于 2011-05-06T02:38:54.233 回答
0

我也在想同样的事情,这是我的外卖。

主要原因是用户体验,WPF 应用程序比 Silverlight 更强大且更易于编写。人们会点击网站,但会三思而后行安装应用程序。XBAP 非常接近网站体验,并且可以执行 Click Once 和 Silverlight。

但是,由于它仅适用于非常狭窄的用户群,因此它可能最适合 Intranet 应用程序。

WPF、XBAP、Silverlight - 我用什么?

于 2012-09-23T11:03:25.917 回答