首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Silverlight Assembly.Load()仅适用于全名/强名称

Silverlight Assembly.Load()仅适用于全名/强名称
EN

Stack Overflow用户
提问于 2010-06-10 22:48:45
回答 2查看 1.6K关注 0票数 3

显然,Assembly.Load()在Silverlight中的实现需要一个全名/强名称。

例如,这是有效的:

代码语言:javascript
运行
复制
Assembly.Load("MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=...");

虽然即使已经加载了MyAssembly,这也会失败:

代码语言:javascript
运行
复制
Assembly.Load("MyAssembly");

有没有办法可以使用简单的名字呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-11 00:08:04

据我所知,在Silverlight中没有办法在不使用全名的情况下解决这个问题。然而,你也许能够用另一种方式实现你的最终目标(取决于你试图做什么)。例如,XAML解析器对程序集名称的容忍度更高,所以如果您只是试图在该程序集中创建一个类的实例(使用默认构造函数),那么类似于

XamlReader.Load("<my:ClassName xmlns:my='clr-namespace:MyNamespace;assembly=MyAssemblyShortName' />")

应该能行得通。

票数 2
EN

Stack Overflow用户

发布于 2010-11-29 02:35:24

我解决这个问题的一种方法是在程序集中包含的类型上使用typeof,我需要获得对它的引用:

代码语言:javascript
运行
复制
var assembly = typeof(MyNamespace.SubNamespace.Type).Assembly;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3015513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档