所以我是一个相当大的LOB应用程序的概念验证阶段.该应用程序将部署到许多组织中的许多桌面(200).它将包含许多CRUD类型的屏幕(大约100个),以及一些非常复杂的过程,如发票生成和财务分类帐集成.它还将包含大量报告.
我已经做了很多功课,并且几乎已经确定了以下技术堆栈:
> PRISM
> CSLA
> NHibernate
所有缺少的是表示层,所以我的问题是:
Silverlight 3是构建如此大型应用程序的合适技术吗?
最初我担心Silverlight缺少报告故事,但现在有一个commerial reporting tool可用问题得到解决.所以现在我想知道我的应用程序的大小以及当他们尝试在浏览器中下载时的性能.凭借100个“屏幕”和一大堆报告,无论如何都不会轻巧.
Silverlight 3是明智的选择还是我应该关注WPF? SL3的主要原因是在许多组织中部署到大量桌面的问题.
解决方法
如果您的应用程序需要以下内容,我建议将Silverlight 3.0用于LOB应用程序.
>丰富的客户端界面
>离线/偶尔连接的场景
>模仿Web部署模型的能力
只要您的发布频率合理,我认为这些好处将超过大型初始下载的副作用.
另一方面,如果以下任何一种情况属实,我会重新考虑使用Silverlight 3.0.
>您需要与USB设备(如扫描仪)连接.
>您需要与客户端上的其他应用程序进行交互.
如果您保证是标准客户端,则可能需要探索“Click-Once”Windows应用程序.它克服了上述限制,不受“沙箱”的约束,您仍然可以使用Web部署模型.