c#10中的namespace
A、namespace是c#用来管理类型隔离的关键字,在不同的namespace下可以相同名称的类型,并且namespace是可以嵌套的。
Demo01.cs
namespace NameSpaceDemo
{
internal class Demo01Class
{
}
namespace NSDemo01
{
internal class Demo01Class
{
}
}
namespace NSDemo02
{
internal class Demo01Class
{
}
}
}
B、C#10.0后,带了文件范围内的namespace,如下,这时,就只能用一个namespace的定义了
Demo02.cs
namespace NameSpaceDemo2;
class Demo02Class
{
}
/*错误
namespace NameSpaceDemo3;
class Demo03
{
}
*/
文件范围namespace可以与区块范围的namespace进行切换。需要项目中添加.editorconfig
这时,就可以在namespace上进行切换了
C、再有就是同时也带来了全局namespace
Demo03.cs
namespace NameSpaceDemo3;
internal class Demo03Class
{
}
定义一个文件,来表明所有全局namespace
GlobalUsing.cs
global using NameSpaceDemo3;
global using static System.Console;
所有定义完的global namesapce,可以在任意项目文件中使用其中的类型
Program.cs
//1、嵌套namespace
var demo01Class = new NameSpaceDemo.Demo01Class();
var demo01Class1 = new NameSpaceDemo.NSDemo01.Demo01Class();
var demo01Class2 = new NameSpaceDemo.NSDemo02.Demo01Class();
//2、文件内namespace
var demo02class = new NameSpaceDemo2.Demo02Class();
//3、全局namespace
var demo03class = new Demo03Class();
WriteLine("using global Demo03Class");
想要更快更方便的了解相关知识,可以关注微信公众号
****欢迎关注我的asp.net core系统课程****
《asp.net core精要讲解》 https://ke.qq.com/course/265696
《asp.net core 3.0》 https://ke.qq.com/course/437517
《asp.net core项目实战》 https://ke.qq.com/course/291868
《基于.net core微服务》 https://ke.qq.com/course/299524
《asp.net core精要讲解》 https://ke.qq.com/course/265696
《asp.net core 3.0》 https://ke.qq.com/course/437517
《asp.net core项目实战》 https://ke.qq.com/course/291868
《基于.net core微服务》 https://ke.qq.com/course/299524