首页 新闻 会员 周边 捐助

"The type 'ITestOutputHelper' is defined in an assembly that is not referenced."

0
悬赏园豆:30 [已解决问题] 解决于 2025-09-07 14:26

将一个 ASP.NET Core 项目从 .NET 7 升级到到 .NET 9,并将 xunit 从 2.5.0 升级至 2.9.3,升级后出现下面的错误

The type 'ITestOutputHelper' is defined in an assembly that is not referenced. You must add a reference to assembly 'xunit.v3.core, Version=3.0.1.0, Culture=neutral, PublicKeyToken=8d05b1bb7a6fdb6c'.

安装 xunit.v3.core 3.0.1 之后,却出现一堆引用冲突,比如

'ITestOutputHelper' is an ambiguous reference between 'Xunit.Abstractions.ITestOutputHelper' and 'Xunit.ITestOutputHelper'

The type 'CollectionAttribute' exists in both 'xunit.core, Version=2.9.3.0, Culture=neutral, PublicKeyToken=8d05b1bb7a6fdb6c' and 'xunit.v3.core, Version=3.0.1.0, Culture=neutral, PublicKeyToken=8d05b1bb7a6fdb6c'

请问如何解决这个问题?

dudu的主页 dudu | 高人七级 | 园豆:24807
提问于:2025-09-07 14:16
< >
分享
最佳答案
0

是 Xunit.Microsoft.DependencyInjection 的版本引起的,从 9.1.2 降级为 8.2.2 可解决

-    <PackageReference Include="Xunit.Microsoft.DependencyInjection" Version="9.1.2" />
+    <PackageReference Include="Xunit.Microsoft.DependencyInjection" Version="8.2.2" />
dudu | 高人七级 |园豆:24807 | 2025-09-07 14:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册