如何让自研NuGet包触发VS「为NuGet包类型建议using」功能推荐
自定义NuGet包触发VS类型安装提示的配置步骤
这个功能的触发依赖NuGet官方的类型索引服务,你只需要给你的包添加规范的元数据配置,等待索引完成即可触发推荐,具体操作如下:
- 第一步:在打包项目的
.csproj文件的PropertyGroup节点中,添加以下必填配置:
<!-- 必须确保PackageId唯一且符合NuGet命名规范 --> <PackageId>你的自定义包ID</PackageId> <Version>符合语义化版本规范的版本号,比如1.0.0</Version> <Authors>包作者信息</Authors> <Description>包功能的清晰描述</Description> <!-- 明确包类型为依赖包,这是索引服务识别的前提 --> <PackageTypes> <PackageType Name="Dependency" Version="1.0.0" /> </PackageTypes> <!-- 必须开启XML文档生成,索引服务需要通过该文件提取公开类型列表 --> <GenerateDocumentationFile>true</GenerateDocumentationFile> <!-- 确保公开程序集的元数据完整 --> <IncludeSymbols>true</IncludeSymbols> <SymbolPackageFormat>snupkg</SymbolPackageFormat>
- 第二步:确保你需要被识别的所有类型都是
public访问权限,非公开类型不会被索引服务收录。不要对程序集进行混淆操作,混淆会破坏类型名称的匹配规则。 - 第三步:将打包完成的nupkg文件发布到nuget.org,发布完成后需要等待最多72小时的索引周期,索引完成后就会进入VS的推荐池。
- 如果你不想等待全局索引,或者你的包下载量极低,可以手动修改VS配置强制开启低下载量包的推荐:
打开VS顶部菜单的「工具」→「选项」→「NuGet包管理器」→「常规」,勾选显示低下载量的包建议选项,重启VS后即可生效。
验证方法:配置完成后在任意C#代码文件中输入你包内的唯一公开类型名,按下
Ctrl+.快捷键,即可看到对应的「安装对应NuGet包」的提示。
内容的提问来源于stack exchange,提问作者Harry
相关产品推荐
相关产品推荐

