C# v10 全局使用声明的文件名约定
File name convention for C# v10 global using declarations
C# 开发社区是否就声明 global using statements 的 .cs 文件名达成共识?
我打算采用文件名 GlobalUsings.cs 但后来发现 VS2022 工具链在幕后创建了一个名为 MyProject.GlobalUsings.g.cs 的隐藏文件。这是为了支持名为隐式全局使用指令的相关新 C# 10 功能。
Blazor 支持 .razor 文件的类似功能,Blazor 解决方案模板会自动创建一个名为 _Imports.razor 的文件。该名称派生自 Razor 语法以声明一个 using 引用。
简答
GlobalUsings.cs
更多信息
实际上有 2 个新功能。乍一看很简单,但越读越复杂。
- 全局 using 指令。您可以在任何文件中的任何 using 指令前使用
global
以使其在项目中成为全局指令。
- 隐式使用。 这会根据项目类型自动添加 a set of common global using directives。您可以在升级到 .NET 6 的项目中启用此功能,购买后将其放入项目 csproj 文件中:
<PropertyGroup><ImplicitUsings>enable</ImplicitUsings>...
在新的 .NET 6 项目中默认启用隐式使用,所以听起来惯例是:
- 使用隐式用法。
- 您可能仍然需要一个文件来存储非隐式的全局使用。我喜欢你
GlobalUsings.cs
的想法。它是自我记录的。
其实这个命名是Welcome to C# 10 Blog推荐的。我强烈推荐阅读它;这对我很有帮助。
C# 开发社区是否就声明 global using statements 的 .cs 文件名达成共识?
我打算采用文件名 GlobalUsings.cs 但后来发现 VS2022 工具链在幕后创建了一个名为 MyProject.GlobalUsings.g.cs 的隐藏文件。这是为了支持名为隐式全局使用指令的相关新 C# 10 功能。
Blazor 支持 .razor 文件的类似功能,Blazor 解决方案模板会自动创建一个名为 _Imports.razor 的文件。该名称派生自 Razor 语法以声明一个 using 引用。
简答
GlobalUsings.cs
更多信息
实际上有 2 个新功能。乍一看很简单,但越读越复杂。
- 全局 using 指令。您可以在任何文件中的任何 using 指令前使用
global
以使其在项目中成为全局指令。 - 隐式使用。 这会根据项目类型自动添加 a set of common global using directives。您可以在升级到 .NET 6 的项目中启用此功能,购买后将其放入项目 csproj 文件中:
<PropertyGroup><ImplicitUsings>enable</ImplicitUsings>...
在新的 .NET 6 项目中默认启用隐式使用,所以听起来惯例是:
- 使用隐式用法。
- 您可能仍然需要一个文件来存储非隐式的全局使用。我喜欢你
GlobalUsings.cs
的想法。它是自我记录的。
其实这个命名是Welcome to C# 10 Blog推荐的。我强烈推荐阅读它;这对我很有帮助。