c#-类和名称空间的引用Visual Studio 2017
作者:互联网
我为我的小项目注意到,在导入类时,有些会使用完整文件夹引用,而其他人则不会.
这是我正在从事的Mini项目的代码.
模型文件夹
包含两个实体,汽车和飞机
namespace Mini.Models {
public class Auto {
// code and stuff
}
}
namespace Mini.Models {
public class Airplane {
// code and stuff
}
}
服务文件夹包含单个服务类
namespace Mini.Services
{
public class AutoService : IAutoService {
public bool Get() {
var autoObject = new Models.Auto(); // notice how it references Models folder
var planeObject = new Airplane(); // Same folder but not referencing Models in front of it
// other code
}
}
public interface IAutoService {
bool Get();
// others
}
}
虽然不是主要的错误,但仍然令人烦恼的是,同一文件夹中的两个类被不同地引用,我不知道为什么.
任何意见,将不胜感激.
删除模型文件夹时出现错误信息
Error CS0118: 'Auto' is a namespace but is used like a type (34, 27)
解决方法:
根据您提供的错误消息:
Error CS0118: 'Auto' is a namespace but is used like a type (34, 27)
看来您有一个名为Auto的命名空间.想象下面的例子:
namespace MyApp.Auto
{
class Test
{
}
}
namespace MyApp
{
class Auto
{
}
class MyTest
{
private Auto test;
}
}
因为您可以从MyApp命名空间中看到一个名为Auto的类和一个名为Auto的命名空间(命名空间MyApp.Auto或简称为Autoname Auto),所以C#不确定您想要哪个.因此,这迫使您在选择一个或另一个时要具体.
最简单的解决方案是将MyApp.Auto命名空间更改为其他名称.
标签:visual-studio-2017,c 来源: https://codeday.me/bug/20191108/2006174.html