我有一个带有程序的解决方案(ConsoleApp6).cs和狗.Visual Studio中的cs
ConsoleApp6.Dog dog = new ConsoleApp6.Dog(); //works
Dog dog = new Dog(); //does not
错误消息显示:找不到类型或命名空间"Dog".即使我遵循修复,让VS创建一个新的类狗,它也不会意识到这一点.
我有一个带有程序的解决方案(ConsoleApp6).cs和狗.Visual Studio中的cs
ConsoleApp6.Dog dog = new ConsoleApp6.Dog(); //works
Dog dog = new Dog(); //does not
错误消息显示:找不到类型或命名空间"Dog".即使我遵循修复,让VS创建一个新的类狗,它也不会意识到这一点.
你们所看到的是"top level statements" feature年的结果
添加了支持,这样您就可以"只编写代码",而不必声明命名空间和包含Main
方法的Program
类.
结果是,这个"顶级层"中的所有内容都不是任何命名空间的一部分,这意味着对具有命名空间的类的每个引用都将导致完全限定if you don't include the 100 at the top of the file.
因此,您的解决方案是在文件顶部添加以下内容:
using ConsoleApp6;
Dog dog = new Dog(); // works now
Note: this is a C#9 feature and not a .NET6 feature.