繁体   English   中英

Silverlight 4中是否真的支持AppDomain.GetAssemblies()?

[英]Is AppDomain.GetAssemblies() really supported in Silverlight 4?

在MSDN中,据说Silverlight 4支持AppDomain.GetAssemblies()

在我的项目中,当我定位Silverlight的第4版(我检查三重)时,我无法访问AppDomain上的GetAssemblies()方法,如下面的屏幕截图所示:

在Silverlight 4中的AppDomain类上找不到GetAssemblies()方法

如果我还是尝试,它将无法编译。 我可以使用以下代码解决此问题:

dynamic domain = AppDomain.CurrentDomain;
var assemblies = domain.GetAssemblies();

它编译并且似乎工作正常但仅在Silverlight客户端5.X和Silverlight 4.0.60351及以上的测试中。 它不适用于客户端的以下版本。 有问题的项目是我的Silverlight应用程序的入口点。

谷歌搜索这个主题主要说它是支持...

所以我的问题是:

  • a)它是否真的受到支持,如果是这样的话,我怎样才能使用它来确保只要我的客户使用任何 4.X版本它就会一直工作?
  • b)如何在没有上述解决方法的情况下在IDE中使用AppDomain.CurrentDomain.GetAssemblies() 我错过了什么吗?

如果它有用,我在桌面上安装了以下内容:

  • Silverlight客户端5.1.10411
  • Silverlight SDK 3,4和5
  • Silverlight 4 Toolkit 2010年4月
  • 适用于VS2010的Silverlight 4工具

我没有尝试卸载/重新安装任何东西(还),以避免在这个繁琐的任务中失去一整天......

-

编辑:似乎在mscorlib.dll for SL4中的AppDomain类上不存在GetAssemblies()方法。 所以我想MSDN文档是不正确的,运行时SL4客户端由于某种原因(在与SL5编译的应用程序的兼容性?)的某些时候进行了修补...

我也在MSDN上弄乱了这些(参见我对MSDN页面的评论)行为或错误的文档,并尝试了许多不同的方法来在Siverlight 4中调用方法调用GetAssemblies。我的解决方案是安装Silverlight 5并将我的silverlight项目更改为使用Silverlight 5。

我的建议是稍后通过对silverlight运行时的补丁或silverlight更新添加方法GetAssemblies。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM