调用标准库 DLL

问题描述

我有以下堆栈和 XAF Winforms,实体框架项目;

Framework 4.72 exe which references
Framework 4.7.2 library1 which references
.Net Standard 2.0 library2 which references
.Net Standard 2.0 library3

从堆栈向下调用 library3 中的方法会产生异常。

System.IO.FileNotFoundException
  HResult=0x80070002
  Message=Could not load file or assembly 'Microsoft.EntityFrameworkCore,Version=3.1.9.0,Culture=neutral,PublicKeyToken=adb9793829ddae60' or one of its dependencies. The system cannot find the file specified.

我能够在直接调用 Library2 的 Framework 4.7.2 单元测试中复制该问题并解决该问题。

为了解决单元测试中的问题,我使用 BindingRedirectGenerator 来生成单元测试 app.config 的运行时部分,按照我的问题 here

的答案

但是,当我为应用程序 app.config 使用生成的部分时,这不起作用

[更新]

我认为问题在于 Library3 调用一个框架库……正在调查中。

解决方法

这是我问的问题的一种形式here 然而,即使在我问了这个问题之前我仍然被抓住了。 解决方案是创建一个带有对话框的单元测试项目,然后在消息框中运行 BindingRedirectGenerator 来制作 app.config

我想咨询一下这个问题是否有用(因为问题是以不同的方式遇到的)还是应该关闭。

无法使该技术适用于 .exe 的问题似乎是一个与从标准库调用框架库有关的新问题。