首页 新闻 赞助 找找看

MVC程序部署报错,求解

0
悬赏园豆:50 [已解决问题] 解决于 2020-11-03 12:07

MVC程序一直在正式环境都是正常运行的,最近在更新版本,突然报错了,我在本地win10运行没问题,在云服务器新安装了winserver 2012 r2数据中心版,winserver 2016数据中心版,winserver 2019数据中心版,都是可以的,但在正式环境的winserver 2012 r2数据中心版,客户机的winserver 2012 r2数据标准版,winserver 2016 标准版都是运行报错的。报错的日志如下:

Message: (0): error CS0011: 未能解析程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中由类型“System.TupleExtensions”引用的基类或接口“System.Object”

Controller: Analysis

Action: Index

Source: System.Web

Exception: System.Web.HttpCompileException (0x80004005): (0): error CS0011: 未能解析程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中由类型“System.TupleExtensions”引用的基类或接口“System.Object” 在 System.Web.Compilation.AssemblyBuilder.Compile() 在 System.Web.Compilation.BuildProvidersCompiler.PerformBuild() 在 System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) 在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) 在 System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) 在 System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound) 在 System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp) 在 System.Web.WebPages.BuildManagerWrapper.CreateInstanceOfType[T](String virtualPath) 在 System.Web.WebPages.VirtualPathFactoryManager.CreateInstanceOfType[T](String virtualPath) 在 System.Web.WebPages.WebPageBase.CreatePageFromVirtualPath(String virtualPath, HttpContextBase httpContext, Func2 virtualPathExists, DisplayModeProvider displayModeProvider, IDisplayMode displayMode) 在 System.Web.WebPages.WebPageBase.<>c__DisplayClass3.<RenderPageCore>b__2(TextWriter writer) 在 System.Web.WebPages.WebPageBase.Write(HelperResult result) 在 System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, Action1 body) 在 System.Web.WebPages.WebPageBase.PopContext() 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList1 filters, ActionResult actionResult) 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)

技术_菜鸟的主页 技术_菜鸟 | 初学一级 | 园豆:71
提问于:2020-11-03 08:56
< >
分享
最佳答案
0

System.Runtime 看你web.config对应配置的版本

收获园豆:50
通信的搞程序 | 小虾三级 |园豆:1747 | 2020-11-03 09:39

这是webconfig配置的版本
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.10.0" newVersion="2.6.10.0" />
</dependentAssembly>

技术_菜鸟 | 园豆:71 (初学一级) | 2020-11-03 09:40

@技术_菜鸟: 那就安装4.0版本的

通信的搞程序 | 园豆:1747 (小虾三级) | 2020-11-03 09:41

@通信的搞程序: 是啊,安装了,就是不行,就非常郁闷了

技术_菜鸟 | 园豆:71 (初学一级) | 2020-11-03 09:43

@技术_菜鸟: 你web.config指定加载的版本是2.6.10的。不是4.0 的

通信的搞程序 | 园豆:1747 (小虾三级) | 2020-11-03 09:44

@通信的搞程序: 这个不是指net4.0版本是程序集本身的版本,但你说这个启发我了,我直接将这个配置节去掉了,竟然正常了,还是非常感谢

技术_菜鸟 | 园豆:71 (初学一级) | 2020-11-03 11:50
其他回答(1)
0

看看Framework的版本是否正确

会长 | 园豆:12401 (专家六级) | 2020-11-03 09:14

net版本我安装了最新的,也不行

支持(0) 反对(0) 技术_菜鸟 | 园豆:71 (初学一级) | 2020-11-03 09:15

@技术_菜鸟: 和你项目用的版本保持一致试试

支持(0) 反对(0) 会长 | 园豆:12401 (专家六级) | 2020-11-03 09:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册