WPF、XBAP、Silverlight...哪个适合业务应用程序?

发布于 2024-07-29 03:34:03 字数 1432 浏览 6 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

万劫不复 2024-08-05 03:34:03

我尝试为一个相当雄心勃勃的项目全职进行 XBAP 开发大约 18 个月,但我非常讨厌它。

有许多未记录的限制,例如无法设置自定义鼠标光标。 MS 忘记告诉任何人关于这一百个其他的事情。 由于存在雷区,我现在非常反对沙箱。

结合部署噩梦(直到今天,Firefox 仍然没有一个好故事,即使在 3.5 SP1 之后仍然存在问题),我真诚地相信 MS 正在尽其所能地消灭 XBAP,以支持 Silverlight。 我不怪他们,只是希望他们能够更公开地对待这件事。

我会像躲避瘟疫一样避免 XBAP。 这是一个死的场景,没有未来。 如果它们很快就被弃用,我们也不会感到惊讶。

I tried to do XBAP development for about 18 months full time for a fairly ambitious project and absolutely hated it.

There are many undocumented limitations, such as not being able to set a custom mouse cursor. MS forgot to tell anyone about that one and a hundred others. I'm very averse to sandboxing now because of that minefield.

Combined that with the deployment nightmares (still to this day there's not a good story for Firefox, even after 3.5 SP1 there's still problems), I honestly believe that MS is doing everything it can to kill XBAPs in favor of Silverlight. I don't blame them, just wish they'd have been more open about it.

I would avoid XBAPs like the plague. It's a dead scenario with no future. Wouldn't be the least bit surprised if they were deprecated soon.

等数载,海棠开 2024-08-05 03:34:03

Wintellect 写了一篇关于 Silverlight 和 WPF 的很好的比较,发表在这里:
http://wpfslguidance.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28278

根据 WPF 和 Silverlight 的个人经验,我发现 SL 完全能够支持 LOB 应用程序。 .NET RIA 服务是 LOB 应用程序 SL3 的出色补充。 为了回答您的最后一个问题,根据我的经验,没有什么可以阻止 SL 创建 LOB 应用程序。 在本讨论中,WPF 和 SL 之间的唯一显着区别是 SL 无法访问客户端计算机上的本地资源(例如注册表),并且无法访问 WPF 可以访问的 Windows 特定功能,例如 Windows 7 跳转列表或库。 我认为 Silverlight 是商业应用程序的最佳选择,因为它易于部署并且能够针对多个平台。

Wintellect wrote a good comparison between Silverlight and WPF published here:
http://wpfslguidance.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28278

From personal experience in WPF and Silverlight I've found that SL is fully capable for LOB apps. The .NET RIA Services are an excellent addition to SL3 for LOB apps. To answer your last questions, there is nothing in my experience that holds SL back from creating LOB apps. The only significant difference between WPF and SL in this discussion is that SL doesn't have access to the local resources on the client machine such as the registry and can't access Windows specific features that WPF can such as Windows 7 jump lists or libraries. I think Silverlight is the best choice for biz apps due to ease of deployment and ability to target multiple platforms.

自控 2024-08-05 03:34:03

关于 Silverlight,我将概述一下我迄今为止的经验。 (注意:重读这篇文章听起来有点负面,但我指出了缺失的功能。总的来说,我喜欢 Silverlight,它是一个使用 c# 的浏览器中丰富的 UI?太棒了)。

显着的区别是没有右键单击、鼠标滚轮支持、打印功能,并且无法打开新窗口。 您的 OOB SL 应用程序无法位于通知区域。 您可以在 JavaScript 中处理鼠标事件,但如果您希望应用程序移动 OOB,则不能。

SL 团队似乎也过度关注安全性,以至于削弱了 LOB 的适用性(没有新窗口、OOB 中本地系统访问的信任设置、通知区域等)。

其中一些使 Silverlight 应用程序感觉与 Windows 不兼容。 想想突出显示文本,右键复制。 或者右键粘贴。 这些很多人使用的基本操作都缺失了。 这也感觉像是一种陌生的 UI 体验,例如,您本能地用鼠标滚轮滚动网格,但它不起作用。 这些东西适用于浏览器中的任何表,但不适用于 SL。

在编程方面,我没有太多使用 WPF,但据我所知,在解决某些问题的方式上存在一些显着差异。

SL 中缺少标记扩展。 它也只有整数索引绑定,因此没有一些技巧就没有属性包。 没有触发器,因此您始终必须编写代码来连接事件(在动态页面中会令人烦恼)。 除了工具包中的 ImplicitStyleManager 之外,它没有可继承的样式,这无法胜任这项工作。

因此,对于某些 LOB 应用程序来说这很好,对于其他应用程序,您必须跳过一些麻烦(例如,如果您希望为客户端提供可定制性)。 但它肯定不适用于所有 LOB 应用程序。

我的印象是SL还没有完成,还有很多小问题。 例如,数据网格令人沮丧(不会自动拉伸,很难子类化),自动完成框有点不稳定,导航框架有点笨重,组合框/树视图很难绑定(如果你想要的话,它们真的还没有整理出来)将 SelectedItem 绑定到与 itemsSource 不同的对象)。

总而言之,Silverlight 即将实现,只要您准备好接受一些限制和小问题就可以了。

With regard to Silverlight, I'll outline my experience so far. (NB: Re-reading this it sounds a bit negative, but I'm pointing out the missing features. Overall I like Silverlight, a rich UI in browser using c#? Rocks).

Notable differences are there's no right-click, mousewheel support, print functionality and you can't open a new window. Your OOB SL app can't sit in the notification area. You can handle the mouse events in javascript but not if you want your app to move OOB.

The SL team also seem overly concerned about security to the point of gimping its LOB suitability (no new windows, trust settings for local system access in OOB, notification area, etc.).

Some of these make a Silverlight app feel like it's not windows compatible. Think about highlight text, right-click copy. Or right-click paste. These basic operations which lots of people use are missing. It also feels like an alien UI experience, e.g. you instinctively go to scroll a grid with your mousewheel and it doesn't work. This stuff works in any table in a browser, but not SL.

Programming wise, I haven't used WPF much, but as far as I can tell, there are some significant differences in how you have to attack some problems.

Markup Extensions are missing in SL. It also only has integer indexed binding, so no property bags without some tricks. There are no triggers so you always have to write code to wire up events (irritating in more dynamic pages). It's got no inheritable styling, apart from the ImplicitStyleManager in the toolkit, which isn't up to the job.

So for certain LOB apps it's fine, for others you have to jump through a few hoops (e.g. if you want customisibility for the client). But it's certainly not great for ALL LOB apps.

My impression is also that SL doesn't feel finished yet, there's a lot of niggles. For example, the datagrid is frustrating (doesn't auto-stretch, very difficult to subclass), autocomplete box a bit erratic, navigation framework a bit clunky, combobox/treeview hard to bind (they really haven't sorted out if you want to bind SelectedItem to a different object to the itemsSource).

All in all, Silverlight's almost there, it's fine as long as you're prepared to accept a few limitations and niggles.

秋凉 2024-08-05 03:34:03

我没有使用XBAP的经验,但我的印象和你的类似,与WPF相比,它只是在安全性方面受到限制。

至于 Silverlight:我最近用它开发了一个复杂的农业遥测监控用户界面——它更像是一个数据可视化应用程序,而不是传统的业务应用程序,但它有大量的 CRUD,而且没有一个我想要的功能实施但由于我选择的技术而无法实施。 那就是 SL2。

我相信你最终会得到更多的铃声和更多的声音。 如果您使用 XBAP,并且您可以保证您的用户正在运行 .NET 3.5(或者 XBAP 也是 3.0 的一部分吗?),我会选择它。 否则,我会毫无保留地推荐 Silverlight。

(如果您想要更多功能比较矩阵,我深表歉意 - 但我认为您可以在 Microsoft 找到这些内容。)

I don't have experience with XBAP, but my impression is similar to yours in that it's only restricted in terms of security when compared with WPF.

As for Silverlight: I recently used it to develop a complex agricultural telemetry monitoring user interface--it's more of a data visualization app than a traditional business app, but it has plenty of CRUD and there wasn't a single feature that I wanted to implement but couldn't because of my choice of technology. And that was SL2.

I'm sure you'd end up with more bells & whistles if you used XBAP, and if you can guarantee that your users are running .NET 3.5 (or is XBAP part of 3.0 too?) I'd go for it. Otherwise, I'd have no reservations in recommending Silverlight.

(Apologies if you wanted more of a feature comparison matrix--but I think you can find those at Microsoft.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文