【问题标题】:Does Silverlight 3 have access to local file system, Open Excel, and print reports?Silverlight 3 是否可以访问本地文件系统、打开 Excel 和打印报告?
【发布时间】:2009-07-18 18:14:50
【问题描述】:

我想知道 Silverlight 3 是否可用于创建业务线应用程序,在这些应用程序中我可以使用文件导入/导出工具、读取 xls 文件并打开 Excel、使用 Crsytal Reports 或 Reporting Services 等报告工具或......需要 WPF?

我是 Silverlight 和 WPF 的新手,想决定是否可以跳过学习 WPF。我知道 Silverlight 是 WPF 的一个子集,但我只想专注于两者之一。

【问题讨论】:

    标签: wpf silverlight silverlight-3.0


    【解决方案1】:

    虽然 Silverlight 是沙盒的,并且无法直接打开文件并将其保存到本地文件系统,但可以将流获取到本地文件。

    OpenFileDialogSaveFileDialog 类。这些类可以让用户选择文件或位置。它们只向该文件返回一个流,并且不提供有关文件系统的任何信息。这样就可以导入和导出到 excel 等。

    This example 应该足以让您继续前进。

    更新: 与此同时,我在我的博客http://www.timmykokke.com/

    【讨论】:

    • 可能想要在您的博客上直接链接到文章,您所指的示例似乎在时间的迷雾中很多。
    【解决方案2】:

    Silverlight 3 的文件系统访问非常有限。即使您可以保存本地文件,也无法直接从 Silverlight 使用关联的应用程序打开它。如果您希望用户通过单击 Silverlight 中的按钮导出和打开 Excel 文件,您将不得不考虑替代方案:

    • 您可以打开一个新的浏览器窗口,该窗口指向您的网络服务器上生成 Excel 文件的 URL。如果服务器设置了正确的内容类型并且客户端配置正确,则会提示用户在 Excel 中打开文件。这有效地将您的导出代码移动到服务器。
    • 您可以在与 Silverlight 控件相同的页面上嵌入 ActiveX 控件,并使用浏览器对象从 Silverlight 操作此 ActiveX 控件。如果用户有足够的权限,ActiveX 控件可以对本地计算机执行任何操作,包括自动执行 Excel。

    【讨论】:

      【解决方案3】:

      不,但显然 SL4 可以!

      Local file access - Silverlight 4

      【讨论】:

        【解决方案4】:

        不,但与 Jimmy 不同,我的猜测是它不会在未来发生。 如果您需要本地系统,则可以使用其他技术(例如可以与 silverlight 应用程序通信的本地 windows 服务)。

        silverlight 近期无法进行本地访问的原因是微软吸取了 ActiveX 的教训。

        【讨论】:

        • 您确实可以访问 Sorskoot 所示的某些本地系统
        【解决方案5】:

        不,据我所知,Silverlight 3 仍像以往一样处于沙盒状态。不过,这正成为开发人员的瓶颈,所以我相信在即将发布的 Silverlight 版本中会解决这个问题。

        【讨论】:

          【解决方案6】:

          据我所知,SL3 不支持使用 COM 应用程序,如 Word、Excel 等。但 SL4 支持。如果您的应用程序只是要在内部使用,WPF 将是您项目的最佳候选者,但如果您希望它也可以从外部客户端使用,那么我认为您可以使用 SL4,然后使用 OUT OF BROWSER,然后它与 WPF 的工作方式非常相似。再加上 SL4,您可以与 Excel、Word 等交互...做很多事情。

          干杯, 布兰登

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2010-11-01
            • 2015-08-02
            • 1970-01-01
            • 1970-01-01
            • 2011-01-30
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多