加载存储在包中的程序集(C#)

时间:2011-06-25 01:08:53

标签: assemblies system.io.packaging

是否可以在C#中加载存储在包中的程序集(即System.IO.Packaging类型包)?

我正在使用ReflectionLoadFrom并传递由PackageUriHelper组成的Uri,它看起来是正确的。在运行时,我得到一个FileLoadException。

编辑: 这是加载程序集的代码:

Assembly assembly = Assembly.ReflectionOnlyLoadFrom(mainDllUri.ToString());

这是构成URI的代码:

UriBuilder packageUriBuilder = new UriBuilder();
                    packageUriBuilder.Path = this.path;
                    packageUriBuilder.Scheme = "pack";
                    Uri packageUri = packageUriBuilder.Uri;
                    Uri partUri = currRelationship.TargetUri;
                    return PackUriHelper.Create(packageUri, partUri);

我知道你可以使用其他URI(例如file://),但我从未见过有人使用过包URI。

0 个答案:

没有答案