在VS2022中,我打开了非常有用的功能"在保存时运行代码配置文件". 启用此选项后,代码中所有不需要的using语句都会在保存时自动删除.

现在,我想创建一个.cs文件,其中包含global using条语句,不包含任何其他语句. 我认为将它们放在单独的专用文件中有助于保持项目的整洁.

但是,由于这global using条语句不在.cs文件本身中使用,所以每次我保存文件时都会删除它们.

在某些情况下有没有办法跳过清理?例如:

  • 对于特定文件
  • 对于全局USING语句
  • 当我使用给定的键盘/鼠标快捷键(例如通过在单击保存时按住Shift或类似键)

前两个选项会更好,因为如果我在整个项目上运行清理,也会起作用.

谢谢你

推荐答案

至少有两种 Select :

  1. 在编辑器配置中从清理中排除具有全局使用的文件.向其中添加以下行(例如,对于名称为GlobalUsings.cs的项目根中的文件):

    [GlobalUsings.cs]
    generated_code = true
    

    Docs for the feature,从Visual Studio 2019 16.5开始提供.

  2. 将全局使用移动到csproj文件(显示了System.Globalization命名空间的示例):

    <ItemGroup>
        <Using Include="System.Globalization"/>
    </ItemGroup>
    

Csharp相关问答推荐

如果属性名为xyz,我需要使用System.Text.Json修改字符串类型的值""<>

在具有主构造函数的类中初始化属性时出现警告

C#EF Core 8.0表现与预期不符

使用两个不同的枚举作为Switch语句中的CASE生成唯一值

附加标题不起作用,而添加则起作用

自定义列表按字符串的部分排序

LINQ to Entities中的加权平均值

Regex字母数字校验

VS 2022与VS 2019:如何/为什么创建额外的任务?

在C#ASP.NET内核中使用INT AS-1进行控制器场景的单元测试

是否可以在Entity Framework Core中使用只读 struct 作为拥有实体?

是否可以从IQueryable T中获取一个IdentyEntry T>

将J数组转换为列表,只保留一个嵌套的JToken

使用可空引用类型时C#接口实现错误

C#System.Commandline:如何向命令添加参数以便向其传递值?

Azure队列触发器未使用隔离的工作进程执行

在使用.NET EF Core DbContext属性之前,是否应使用null判断

反序列化我以前使用System.Text.Json序列化的文件时出现异常

与Visual Studio 2022中的.NET框架相比,如何在.NET Core 6中获取错误输出的窗口句柄

C#Web服务转换为 node /Express不工作