是否可以在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。