重命名需要管理员权限 强制删除命名空间的方法

前言在《.NET 6新特性试用 | 隐式using指令》中,我们介绍过,开启隐式using指令时,会在编译时生成 GlobalUsings.g.cs 文件,加入大量 global using 指令:
// <auto-generated/>global using global::Microsoft.AspNetCore.Builder;global using global::Microsoft.AspNetCore.Hosting;global using global::Microsoft.AspNetCore.Http;global using global::Microsoft.AspNetCore.Routing;global using global::Microsoft.Extensions.Configuration;global using global::Microsoft.Extensions.DependencyInjection;global using global::Microsoft.Extensions.Hosting;global using global::Microsoft.Extensions.Logging;global using global::System;global using global::System.Collections.Generic;global using global::System.IO;global using global::System.Linq;global using global::System.Net.Http;global using global::System.Net.Http.Json;global using global::System.Threading;global using global::System.Threading.Tasks;这样的好处是,不用在每个 cs 文件中写using指令了 。
但是,如果不想自动引入某个 global using 命名空间 , 怎么办?
思路上次,我们已经分析出,global using 具体值来源于项目引用的SDK 。
例如 , C:\Program Files\dotnet\sdk\6.0.100\Sdks\Microsoft.NET.Sdk.Web\Sdk\Sdk.props 是这样引用的:
<ItemGroup Condition="'$(Language)' == 'C#' AND ('$(ImplicitUsings)' == 'true' or '$(ImplicitUsings)' == 'enable')"><Using Include="System.Net.Http.Json" /><Using Include="Microsoft.AspNetCore.Builder" /><Using Include="Microsoft.AspNetCore.Hosting" /><Using Include="Microsoft.AspNetCore.Http" /><Using Include="Microsoft.AspNetCore.Routing" /><Using Include="Microsoft.Extensions.Configuration" /><Using Include="Microsoft.Extensions.DependencyInjection" /><Using Include="Microsoft.Extensions.Hosting" /><Using Include="Microsoft.Extensions.Logging" /></ItemGroup>那么,只需要把文件中对应行删除就可以了?!
但是,这种方式必须为所有开发机器都修改 , 肯定不现实 。
那既然有Using Include,会不会还有Using Exclude呢?
实现你还别说,还真有:

重命名需要管理员权限 强制删除命名空间的方法

文章插图
但是,在项目文件中添加了下列内容后,编译报错:
<ItemGroup><Using Exclude="Microsoft.AspNetCore.Builder" /></ItemGroup>
重命名需要管理员权限 强制删除命名空间的方法

文章插图
按照错误提示,我们改用 Remove:
<ItemGroup><Using Remove="Microsoft.AspNetCore.Builder" /></ItemGroup>再次编译出错,这次的错误是正确的,因为我们已经成功的移除了指定 global using 命名空间 。
重命名需要管理员权限 强制删除命名空间的方法

文章插图
结论【重命名需要管理员权限 强制删除命名空间的方法】如果你对 global using 有特定要求,可以采取本文中的方案进行移除 。


    以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

    「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: