繁体   English   中英

Mono 4(3.1.2工作正常),无法加载类型Microsoft.CSharp.RuntimeBinder.RuntimeBinderContext

[英]Mono 4 (3.1.2 worked fine), Could not load type Microsoft.CSharp.RuntimeBinder.RuntimeBinderContext

我的应用程序可以在Mono 3.1.2上正常运行,但是一旦我升级到Mono 4.0,我的应用程序将无法启动:

无法从程序集“ Microsoft.CSharp,版本= 4.0.0.0,文化=中性”中加载类型“ Microsoft.CSharp.RuntimeBinder.RuntimeBinderContext”。

有谁知道为什么会这样? 我正在使用NancyHost导致问题。

这是完整的堆栈跟踪:

System.TypeLoadException:无法从程序集“ Microsoft.CSharp,版本= 4.0.0.0,区域性=中性,PublicKeyToken = b03f5f7f11d11a50a”中加载类型“ Microsoft.CSharp.RuntimeBinder.RuntimeBinderContext”。 在Microsoft.CSharp.RuntimeBinder.CSharpGetIndexBinder.FallbackGetIndex(System.Dynamic.DynamicMetaObject目标,System.Dynamic.DynamicMetaObject []索引,System.Dynamic.DynamicMetaObject errorSuggestion)[0x00000]在System.Dynamic.GetIndexBinder.System(Fallback) .Dynamic.DynamicMetaObject目标,System.Dynamic.DynamicMetaObject []索引)[0x00000]在System.Dynamic.DynamicMetaObject.BindGetIndex(System.Dynamic.GetIndexBinder活页夹,System.Dynamic.DynamicMetaObject []索引)处为[0x00000]在System.Dynamic.GetIndexBinder.Bind(System.Dynamic.DynamicMetaObject目标::0处,在System.Dynamic.DynamicObject + MetaDynamic.BindGetIndex(System.Dynamic.GetIndexBinder活页夹,System.Dynamic.DynamicMetaObject []索引)处为[0x00000] ,System.Dynamic.DynamicMetaObject [] args)[0x00000]在System.Dynamic.DynamicMetaObjectBinder.Bind(0.00000)(System.Object [] args,System.Collections.ObjectModel.ReadOnlyCollection 1 parameters, System.Linq.Expressions.LabelTarget returnLabel) [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.CallSiteBinder.BindCore[Func 1 parameters, System.Linq.Expressions.LabelTarget returnLabel) [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.CallSiteBinder.BindCore[Func 4](System.Runtime.CompilerServices.CallSite 1 site, System.Object[] args) [0x00000] in <filename unknown>:0 at System.Dynamic.UpdateDelegates.UpdateAndExecute2[Object,String,Object] (System.Runtime.CompilerServices.CallSite site, System.Object arg0, System.String arg1) [0x00000] in <filename unknown>:0 at Nancy.Conventions.BuiltInCultureConventions.FormCulture (Nancy.NancyContext context) [0x00000] in <filename unknown>:0 at Nancy.Culture.DefaultCultureService.DetermineCurrentCulture (Nancy.NancyContext context) [0x00000] in <filename unknown>:0 at Nancy.DefaultNancyContextFactory.Create (Nancy.Request request) [0x00000] in <filename unknown>:0 at Nancy.Routing.RouteCache..ctor (INancyModuleCatalog moduleCatalog, INancyContextFactory contextFactory, IRouteSegmentExtractor routeSegmentExtractor, IRouteDescriptionProvider routeDescriptionProvider, ICultureService cultureService, IEnumerable Nate.Diagnostics.DiagnosticsHook.Enable(Nancy.Diagnostics.DiagnosticsConfiguration diagnosticsConfiguration,IPipelines管道,IEnumerable 1 providers, IRootPathProvider rootPathProvider, IRequestTracing requestTracing, Nancy.Bootstrapper.NancyInternalConfiguration configuration, IModelBinderLocator modelBinderLocator, IEnumerable 1 responseProcessors,IEnumerable 1 routeSegmentConstraints, ICultureService cultureService, IRequestTraceFactory requestTraceFactory, IEnumerable 1 routeMetadataProviders,ITextResource textResource)[0x00000]在Nancy:0时为0。 1 [Nancy.TinyIoc.TinyIoCContainer] .Initialise()[0x00000] in:0 at Nancy.Hosting.Self.NancyHost..ctor(INancyBootstrapper bootstrapper,Nancy.Hosting.Self.HostConfiguration配置,System.Uri [] baseUris)[ Nancy.Hosting.Self.NancyHost..ctor中的:0中的[0x00000] (System.Uri baseUri,INancyBootstrapper引导程序,Nancy.Hosting.Self.HostConfiguration配置)[0x00000] in:0

该错误是不言自明的,在Mono 4.0.0的Microsoft.CSharp程序集中不存在RuntimeBinderContext类型。

如果您仔细查看下面的Image,您会看到这些是为程序集定义的唯一类型,其中没有RuntimeBinderContext。 因此,错误。

拆卸Microsoft.CSharp 4.0.0.0

我知道这不是解决您问题的方法,我在这里也遇到了同样的情况。 如果找到解决方案,我会发布。 但我想指出您为什么会出现此错误。

暂无
暂无

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

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