在ASP.NET Core MVC(xUnit Test)中找不到重复的“System.Reflection.Assembly.*”属性和类型

iswrvxsc  于 12个月前  发布在  .NET
关注(0)|答案(1)|浏览(99)

我创建了一个ASP.NET Core 6 MVC Web应用程序。生成成功,项目中没有任何错误。
在同一个解决方案中,我创建了一个xUnit测试项目,你可以看到下面的文件夹结构:

单元测试文件代码为:

using Microsoft.AspNetCore.Mvc;
using NetCoreMvcWebApp.Controllers;

namespace TestMvcApp
{
    public class UnitTest1
    {
        [Fact]
        public void Test1()
        {
            HomeController h = new HomeController(null);
            var res = (ViewResult)h.Index();
            var outdata = res.ViewData["SomeData"];
            Assert.IsType<DateTime>(outdata);
        }
    }
}

添加了ASP.NETCoreMVC Web应用程序作为测试项目依赖项的项目引用。
当我构建解决方案或测试项目时,我得到这些错误,代码文件中没有任何曲线:
错误CS0246
找不到类型或命名空间名称“Fact”(是否缺少using指令或程序集引用?)NetCoreMvcWebApp
错误CS0246
找不到类型或命名空间名称“FactAttribute”(是否缺少using指令或程序集引用?)NetCoreMvcWebApp
错误CS0579
重复的“global::System.Versioning.TargetFrameworkAttribute”属性NetCoreMvcWebApp

如何解决这些错误?

nbysray5

nbysray51#

在根项目中运行“dotnet restore”,现在Xunit在测试项目中被识别。
或者解决方案的关键是让所有安装的xunit包都具有相同的版本。--如果NuGet上只有少数更新可用,请等待所有xunit软件包都可用于同一版本。

相关问题