1、C# 10中命令空间(namespace)定义
1)之前的写法
namespace SampleCode
{
public class MyClass
{
}
}
2)新的写法
namespace SampleCode;
public class MyClass
{
}
2、命名空间定义的警告配置
有可能改成新写法定义命名空间,会提示警告信息:IDE0160: Convert to block scoped namespace
。解决这个问题我们可以修改.editorconfig
中的配置解决。vs2019和vs2022都支持在项目中加入一个.editorconfig
的文件来统一处理代码的样式风格,命名风格等问题。
1)需要强制使用C# 10之前的写法
在.editorconfig
中改成配置如下:
# IDE0160: Convert to block-scoped namespace csharp_style_namespace_declarations = block_scoped:warning
2)需要强制使用C# 10的新写法
在.editorconfig
中改成配置如下:
# IDE0160: Convert to file-scoped namespace csharp_style_namespace_declarations = file_scoped:warning
3、Jetbrain Rider中的配置
参考文档:https://www.jetbrains.com/help/rider/Using_EditorConfig.html
1).editorconfig中配置
csharp_style_namespace_declarations = file_scoped
dotnet_diagnostic.IDE0161.severity = error
2)CSProj项目文件的中配置
<PropertyGroup> <EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild> </PropertyGroup>