将 Moq 添加到测试项目会导致 pseudo-random could not load library 问题

Adding Moq to a test project causes a pseudo-random could not load library issue

我的一位同事向 master 分支添加了一个测试项目,其中包含一个 Moq 参考。当时甚至没有使用总线,仅仅有引用就会导致构建和网站失败:

我在标题中称其为伪随机问题,因为我也遇到过同样的错误,但是:

System.Buffers

一旦设置,它就非常一致,所以不知道触发器是什么来抛出不同的库。

如果我从解决方案中删除该网站,代码构建正确,但该网站仍然在浏览器中显示该问题(我猜正如您所期望的那样)。

如果我删除 Moq 和所有添加的依赖项存在的跟踪(并且它是 children),构建将再次运行


我将其称为伪随机问题的另一个原因是我怀疑我所看到的是该问题的症状。不是问题本身。它恰好在 System.Runtime.CompilerServices.Unsafe 或其他任何地方触发。


Any ideas / tips on what I can do to:
  1. 找到实际问题
  2. 想出解决办法?

PS:如果它可能很重要,我们使用的是确定性构建,而不是默认构建。

随着时间的推移,很明显这是一个架构错误。需要进行彻底的重组才能解决这个问题,很遗憾,无法为此提供简单的答案。