xxxx.BLL.XmlSerializers是什么作用呀?

zarte 2020-06-29 12:09:23
一个旧的net2.0项目现在用新的vs编译会自动生成这个。但是提示:
以下程序集包含对高于目标版本的 .NET Framework 版本的依赖项,在运行时可能无法正确加载并会导致错误...
依赖项为: System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089; mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089; System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

需要改什么配置可以支持2.0,服务器是旧的不能改4.0
...全文
823 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zarte 2020-06-29
  • 打赏
  • 举报
回复
引用 8 楼 ying1234 的回复:
xxx.BLL.XmlSerializers所依赖项目也得改成2.0吧。
知道原因了,因为新的vs自带的sgen.exe是4.0的。。。。要去旧版那拷贝2.0的然后手动序列化下生成的dll就可以了。
zarte 2020-06-29
  • 打赏
  • 举报
回复
引用 8 楼 ying1234 的回复:
xxx.BLL.XmlSerializers所依赖项目也得改成2.0吧。
问题就在这!!!!!找不到这个对应的文件,xxx项目的引用都已经是运行时版本2.0了。。
ying1234 2020-06-29
  • 打赏
  • 举报
回复
xxx.BLL.XmlSerializers所依赖项目也得改成2.0吧。
zarte 2020-06-29
  • 打赏
  • 举报
回复
zarte 2020-06-29
  • 打赏
  • 举报
回复
引用 5 楼 ying1234 的回复:
vs有时候会发神经,会发布出老的dll,你把xxxx.BLL.XmlSerializers这个所在的项目,改成一样的版本后,单独编译,然后覆盖到站点上。
单独重新生成没报错,但是拷贝到站点目录还是失败,站点重新发布也是失败。。。 错误: 能加载文件或程序集“xxx.BLL.XmlSerializers”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集。 警告: 程序集绑定日志记录被关闭。 要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。 注意: 会有一些与程序集绑定失败日志记录关联的性能损失。 要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。 [BadImageFormatException: 未能加载文件或程序集“xx.BLL.XmlSerializers”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集。] System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0 System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +416 System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +166 System.Reflection.Assembly.Load(String assemblyString) +35 System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +190
ying1234 2020-06-29
  • 打赏
  • 举报
回复
vs有时候会发神经,会发布出老的dll,你把xxxx.BLL.XmlSerializers这个所在的项目,改成一样的版本后,单独编译,然后覆盖到站点上。
zarte 2020-06-29
  • 打赏
  • 举报
回复
引用 3 楼 ying1234 的回复:
导出站点?是发布吧?你把站点根目录类似 *.publishproj的删除掉,重新发布,当然框架按你的意思得改成2.0再发布。
删掉还是不行。。。软件是Microsoft Visual Studio Community 2019 发布的时候设置了发布期间预编译这个,不勾这个可以发布但是,访问站点会报错。 未能加载文件或程序集“xxxx.BLL.XmlSerializers”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集。 这个dll应该是自动生成的吧??项目里没找到这个呀
ying1234 2020-06-29
  • 打赏
  • 举报
回复
导出站点?是发布吧?你把站点根目录类似 *.publishproj的删除掉,重新发布,当然框架按你的意思得改成2.0再发布。
zarte 2020-06-29
  • 打赏
  • 举报
回复
引用 1 楼 正怒月神 的回复:
你在ide中把项目和类库的架构都改成.net framework 2.0,再试试看
已经改成2.0了,而且也试过把生成序列化程序集改成关,导出站点的时候依然会报错。。。
正怒月神 版主 2020-06-29
  • 打赏
  • 举报
回复
你在ide中把项目和类库的架构都改成.net framework 2.0,再试试看

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧