gpt4 book ai didi

c# - Fluent NHibernate 无法在测试的 Debug模式下从 GAC 加载 MySql.Data

转载 作者:行者123 更新时间:2023-11-29 14:45:25 24 4
gpt4 key购买 nike

我得到以下代码:

    var cfg = new Configuration();
cfg.Configure();
FluentConfiguration config = Fluently.Configure(cfg)
.Mappings(
m => m.FluentMappings.AddFromAssemblyOf<InputMapping>());
s_SessionSource = new SessionSource(config);

当我调试单元测试并出现以下错误时,最后一行抛出异常:

Could not load file or assembly 'MySql.Data' or one of its dependencies. The system cannot find the file specified.

问题是它没有说明它尝试使用哪个版本。我尝试使用以下配置捕获所有版本:

 <dependentAssembly>
<assemblyIdentity name="MySql.Data"
publicKeyToken="c5687fc88969c44d"
culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-6.3.6.0"
newVersion="6.3.7.0" />
</dependentAssembly>

但问题仍然存在。奇怪的是,异常没有说明任何有关版本的信息,但在这种情况下通常会这样做。

Fluent NHB 是最新的 1.2 for 3.1 版本 NHB 是 3.2 连接器是 6.3.7.0

我正在使用 MSTest。当我在没有调试的情况下运行测试(运行检查测试)时,它不会抛出任何异常并成功完成(它确实使用 MySQL 测试数据库执行操作,因此在这种情况下它会找到 MySql.Data.dll 并插入行,例如没有问题) .

更新好吧,当我从 GAC 获取 MySql.Data.dll 并将其作为文件引用并设置“复制本地”时,它终于开始在调试中工作。这是什么情况?为什么在调试时无法从GAC加载它,而在简单运行模式下可以?

最佳答案

也许 32/64 位执行配置有问题?两个平台的 DLL 相同,但 .exe 不同。您可以检查您的测试项目是否配置为 AnyCPU。

关于c# - Fluent NHibernate 无法在测试的 Debug模式下从 GAC 加载 MySql.Data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7060850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com