【问题标题】:Silverlight 2.0 ready for line of business appsSilverlight 2.0 为业务线应用做好准备
【发布时间】:2008-10-13 23:46:32
【问题描述】:

现在 Silverlight 2.0 已经正式发布,我想知道是否有人将它用于任何业务线应用程序,例如 POS、垂直市场应用程序等。如果是这样,与旧的 WinForms 应用程序或 Web 应用程序相比,您的体验如何?

【问题讨论】:

    标签: .net asp.net silverlight


    【解决方案1】:

    我认为 Silverlight 对于商业应用程序来说将是巨大的。这是一些要点,突出了 Silverlight 作为浏览器内的 LOB 平台的优势。我写这篇文章是为了帮助一位正在比较 ASP.NET 与 Silverlight 的同事,但希望它包含一些提示。

    额外的 Silverlight 功能

    • 您现在可以使用独立存储对静态数据进行离线缓存 - 只需将您的数据序列化为 JSON 或 XML 并保存在本地。
    • 对 UX 的更强工具支持 - 使用 jQuery,您将手动编写所有额外的 UX。不知道这是不是很重要,因为 jQuery 真的很时尚。
    • C# over JavaScript - 更好的调试和开发体验。
    • 支持多线程、跨域网络和套接字。
    • 支持本地文件访问 - 假设您想要导入 CSV 文件而无需往返服务器。在 Silverlight 中,您可以使用 FileOpenDialog 并在本地读取文件内容。
    • 易于移植到 WPF

    额外的 Silverlight 控件

    • 第一批带外 Silverlight 控件将在 PDC 上提供,包括以下控件: DockPanel、WrapPanel、ViewBox、Label、HeaderedContentControl、Expander、TreeView、NumericUpDown、AutoComplete、Accordion。
    • Scott Gu 暗示,如果算上 CodePlex 上发布的带外控件,Silverlight 可能会随着时间的推移获得 100 多个控件。
    • 阅读更多内容http://blogs.msdn.com/sburke/archive/2008/09/17/control-freak.aspx

    WPF 可移植性

    • 存在一些主要差异。将非 UI 代码移植到 WPF 应该相当简单。
    • 如果您的样式不太有创意,也可以直接使用大多数控件端口。主要区别之一是 Silverlight 使用 VisualStateManager 而不是 Trigger 来设置控件样式。有一个社区项目可用于向 WPF 添加 VSM 支持,以便更轻松地移植应用程序。 VSM 将添加到未来的 WPF 版本中,以使两者更加成对。
    • 您将能够重用大量知识、设计资产和代码。
    • 我写了一篇关于将我的 Dive Log 应用程序(一个很小,但突出了一些问题)移植到 WPF 的博客文章:http://jonas.follesoe.no/PortingTheSilverlightDiveLogApplicationToWPF.aspx(在几个小时内完成)。

    数据输入用户体验

    • Silverlight 将使实施更复杂的客户端验证规则变得更加容易,从而使您的数据输入表单的响应速度更快,而返回服务器的次数更少。您可以使用 AJAX 执行此操作,但需要更多的努力。
    • 使用 Silverlight,您可以发挥创意并增强您的数据输入表单,并在根据表单之前的选择启用/禁用表单的某些部分时添加漂亮的效果。
    • 您可以为您的数据输入创建很酷的小部件。参考。在潜水日志应用程序中设置 Air-In/Air-Out 的方式是通过更改气罐中的空气水平,而不是仅仅在文本框中输入值。

    可视化

    • 您可以使用 jQuery 动画 API 做很多很酷的事情 - 但是 Silverlight 可以更轻松地使用动画、漂亮的可缩放矢量图形等来制作丰富的 UI。对于普通的 ASP.NET,您可能有更多的第三方控件/可供选择的组件,但对于简单的图表,Visifire 图表非常棒。

    复制/粘贴/选择文本

    • 我不喜欢使文本可选择/可复制的困难。
    • Silverlight 中的开箱即用打印体验也受到限制。它只会打印屏幕上的内容。我正在撰写一篇博文,展示如何在 Silverlight 组件后面生成 HTML 并使用 CSS 进行打印。

    搜索引擎优化

    • 猜猜这取决于您的客户要求。如果您的数据应该是可搜索的,您可以通过使用 ASPX 页面来绕过它,该页面在第一次加载时将数据呈现为 Silverlight 页面后面的 HTML。因此,您的网站将类似于 ShowCustomer.aspx?CustomerID=10 - Silverlight 将在表单中显示客户 10,并且在 Silverlight 组件后面有表示相同信息的 HTML。然后,您还需要提供一个站点地图文件,以便 Google 知道如何索引/查找您的页面内容。但这是可行的。

      如果您的应用程序非常“类似于应用程序”,则可能没有意义,因为很难为您的应用程序的不同状态创建 URL。

    【讨论】:

      【解决方案2】:

      看看克里斯安德森的series of articles - 我认识这个家伙,他现在非常喜欢这个。他正在 Silverlight 上开发自己的业务平台。

      编辑:也看看这篇 MSDN 文章:Create Data-Centric Web Applications With Silverlight 2

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-09-10
        • 1970-01-01
        • 2017-06-12
        • 2011-09-01
        • 1970-01-01
        • 2016-11-23
        • 2021-11-20
        • 1970-01-01
        相关资源
        最近更新 更多