【问题标题】:Using .Net standard assemblies in Silverlight 5在 Silverlight 5 中使用 .Net 标准程序集
【发布时间】:2016-12-12 14:46:58
【问题描述】:

使用 .Net 标准构建的 .Net Core 程序集能否与 Silverlight 5 兼容?

理想情况下二进制兼容,但重新编译也可以。如果是,是否有任何关于如何创建此类程序集的文档?

我在文档中找不到任何关于 Silverlight 的信息,例如.Net Standard Documentation

【问题讨论】:

  • 您是否尝试过从 Silverlight 项目中引用此类库?
  • 刚刚又试了一次,解决方案中的项目引用和程序集引用都不起作用。 VS 拒绝项目引用,并且程序集引用无法构建。

标签: .net silverlight .net-core portable-class-library .net-standard


【解决方案1】:

从 Silverlight 和 .Net 引用相同 DLL 的唯一方法是使用 Portable Class Library (PCL)。由于 PCL 必须是跨平台的,而且该技术早于 .Net 标准,因此您在 PCL 中可以做的事情将非常有限(比在 Silverlight 中可以做的更有限)。

由于 Silverlight 已经在通往 being sunsetted 的道路上,因此该技术不会有新功能。在 2021 年 10 月之前只有错误修复和安全补丁。自发布以来,Silverlight 的兼容性一直在缩小,all modern browsers have dropped support(或从未有过)。

不支持 Silverlight 的浏览器列表包括:

  • Firefox 自 52.0 版起
  • Chrome 因为他们disabled NPAPI support
  • 自 9.x 版以来的 Safari
  • Microsoft Edge(从未添加支持)

所有人也都禁用了闪存支持。唯一仍支持 Silverlight 的浏览器是 Internet Explorer。

由于距离 Silverlight 完全消亡还有 3 年(截至 2018 年),我建议从它迁移并使用基于标准的 HTML5/CSS3/JavaScript6 解决方案。

【讨论】:

  • 感谢您的额外努力。我们已经在寻找替代品,甚至在这个问题之前。这个问题是离开 Silverlight 的中间步骤的一部分。
  • @sanosdole,我现在正在进行的一个项目也遇到了同样的事情,所以所有信息都是新鲜的。我已成功地将大部分域逻辑放入 PCL 中,以便我可以使用 MSTest 对其进行测试并在 Silverlight 中使用它。为此目的工作得很好,但我必须创建一些接口,以便我可以注入 URL 编码/解码支持以及与 FileInfo 相关的任何内容。
【解决方案2】:

没有。只有 Silverlight 受支持(在 .Net Standard 1.0 上)是 Windows Phone Silverlight 8.0。更多信息https://github.com/dotnet/standard/blob/master/docs/versions.md

【讨论】:

  • 关于为 Silverlight 重新编译 .Net 标准代码的任何想法,或者这些库相距多远?
  • @sanosdole,为了与 Silverlight 兼容,您需要便携式库,它早于 .Net 标准。他们非常有限。 Silverlight 的生命周期将在 2021 年结束,目前唯一仍然支持它的浏览器是 InternetExplorer。现在会有新版本。值得考虑远离技术的迁移计划。 blogs.msdn.microsoft.com/webapps/2014/01/16/…
【解决方案3】:

线程有点老了,但如果您仍在寻找 Silverlight 应用程序迁移,您可能想看看这个:http://www.cshtml5.com

它允许您保留现有的 C# 和 XAML 代码,并将文件编译为 HTML5 和 JavaScript。

他们还有专门针对 SL 迁移的指南:http://www.cshtml5.com/links/migrating-from-silverlight.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多