强制 sgen.exe 使用程序集重定向

问题描述

我有我需要使用 SGen 的程序集。程序集正在为记录器使用另一个程序集,并且此程序集使用引用的 Microsoft.Extensions.Configuration.Abstractions 的不同版本。项目是新的 csproj 但完整的框架。

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>net472</TargetFramework>


    <ItemGroup>
        <packagereference Include="Microsoft.Extensions.Configuration.Abstractions" Version="5.0.0" />

使用我得到的 sgen

Microsoft (R) Xml Serialization support utility
[Microsoft (R) .NET Framework,Version 4.8.3928.0]
copyright (C) Microsoft Corporation. All rights reserved.
Error: The type initializer for 'Infrastructure.Logging.CommonLogger' threw an exception.
  - Could not load file or assembly 'Microsoft.Extensions.Configuration.Abstractions,Version=2.0.0.0,Culture=neutral,PublicKeyToken=adb9793829ddae60' or one of its dependencies. The system cannot find the file specified.

If you would like more help,please type "sgen /?".

主程序集正在使用抽象库的第 5 版,但 SGen 忽略它。

尝试为这个 dll 生成程序集绑定重定向,但它仍然不起作用。

为什么以及如何修复它?应用程序在部署到 RTM 服务器时崩溃。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)