c# - 缺少 using 指令
问题描述
全新的 C# 并尝试编写测试程序。但是,我收到以下错误:
TypeTests.cs(30,41):错误 CS0246:找不到类型或命名空间名称“book”(您是否缺少 using 指令或程序集引用?) [C:\dev\gradebook\test\GradeBook.tests \GradeBook.tests.csproj] TypeTests.cs(45,37):错误 CS0246:找不到类型或命名空间名称“book”(您是否缺少 using 指令或程序集引用?) [C:\dev\ Gradebook\test\GradeBook.tests\GradeBook.tests.csproj] TypeTests.cs(86,9):错误 CS0246:找不到类型或命名空间名称“book”(您是否缺少 using 指令或程序集引用? ) [C:\dev\gradebook\test\GradeBook.tests\GradeBook.tests.csproj]
尝试重建并重新添加 xunit
using System;
using Xunit;
namespace GradeBook.tests
{
public class TypeTests
{
[Fact]
public void Test1()
{
var x = GetInt();
Assert.Equal(3, x);
}
private int GetInt()
{
return 3;
}
[Fact]
public void CSharpCanPassByRef()
{
var book1 = GetBook("Book 1");
GetBookSetName(ref book1, "New Name");
Assert.Equal("Book 1", book1.name);
}
private void GetBookSetName(ref Book book, string name)
{
book = new Book(name);
}
[Fact]
public void CSharpIsPassByValue()
{
var book1 = GetBook("Book 1");
GetBookSetName(book1, "New Name");
Assert.Equal("Book 1", book1.name);
}
private void GetBookSetName(Book book, string name)
{
book = new Book(name);
}
[Fact]
public void CanSetNameFromReference()
{
var book1 = GetBook("Book 1");
SetName(book1, "New Name");
Assert.Equal("New Name", book1.name);
}
private void SetName(BookTests book, string name)
{
book.Name = name;
}
[Fact]
public void GetBookReturnDifferentObject()
{
var book1 = GetBook("Book 1");
var book2 = GetBook("Book 2");
Assert.Equal("Book1", book1.name);
Assert.Equal("Book2", book2.name);
Assert.NotSame(book1, book2);
}
[Fact]
public void TwoVarsCanReferenceSameObject()
{
var book1 = GetBook("Book 1");
var book2 = book1;
Assert.Same(book1, book2);
Assert.True(Object.ReferenceEquals(book1, book2));
}
Book GetBook(string name)
{
return new Book(name);
}
}
}
解决方案
要解决此问题,您需要引用您的项目
- 在终端添加dotnet 添加引用
例子
dotnet add reference <PROJECT> ..\..\src\GradeBook\GradeBook.csproj
- 检查您的 cs 文件并查看创建类的命名空间
public class Book
- 如果命名空间使用,
GradeBook
那么您namespace GradeBook.tests
需要更改为namespace GradeBook
推荐阅读
- javascript - 仅在使用 javascript 过滤结果后显示引导表
- sql - SQL。大查询。从对应于另一列的数组中查找值
- node.js - 如何在 Sequelize 中插入相关实体
- makefile - 如何在 Redhawk sdr 源代码中包含新的 idl 文件并编译它们
- url - URL 路径和查询组合的命名约定
- python - 计算python对每日股价数据的相对表现
- .net - Microsoft.AnalysisServices.Tabular.JsonScripter 指的是不存在的 Json 程序集版本
- python - 4.6 之前的 pytest 能够从与已安装的命名空间包同名的本地包中导入,但现在不能。那是一个错误吗?
- javascript - 使用任何应用程序访问漫游文件夹时,访问被拒绝错误
- reactjs - 不小心删除了package.json,请问有没有办法重新生成呢?