首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用VS2017创建NuGet包,该包包含一个专门命名的包含其他内容的文件夹

创建NuGet包是一种将代码、库、资源和其他文件打包成可重用组件的方式。通过NuGet包,开发者可以方便地共享和分发自己的代码和资源,使其他开发者能够轻松地引用和使用这些组件。

在使用VS2017创建NuGet包时,可以按照以下步骤进行操作:

  1. 打开Visual Studio 2017,创建一个新的类库项目(例如,C#类库项目)。
  2. 在项目中添加需要包含在NuGet包中的文件和文件夹。可以通过右键单击项目,选择“添加”->“现有项”来添加文件,或者通过右键单击项目,选择“添加”->“新建文件夹”来创建文件夹。
  3. 在项目中添加一个NuGet规范文件(.nuspec文件),该文件描述了NuGet包的元数据信息,例如包的名称、版本、作者、描述等。可以通过右键单击项目,选择“添加”->“新建项”->“NuGet规范文件”来添加该文件。
  4. 编辑.nuspec文件,填写包的元数据信息。例如,可以指定包的ID、版本号、作者、描述等。
  5. 在.nuspec文件中,可以使用<files>元素来指定需要包含在NuGet包中的文件和文件夹。可以使用通配符来匹配多个文件或文件夹。
  6. 在.nuspec文件中,可以使用<dependencies>元素来指定该包依赖的其他NuGet包。可以指定依赖的包的ID和版本范围。
  7. 在.nuspec文件中,可以使用<contentFiles>元素来指定包含在NuGet包中的内容文件。可以指定这些文件的目标路径和目标文件夹。
  8. 在.nuspec文件中,可以使用<frameworkAssemblies>元素来指定包含在NuGet包中的.NET Framework程序集。
  9. 在.nuspec文件中,可以使用<references>元素来指定包含在NuGet包中的引用程序集。
  10. 在.nuspec文件中,可以使用<files>元素的exclude属性来排除某些文件或文件夹不包含在NuGet包中。

完成以上步骤后,可以使用Visual Studio 2017的NuGet Package Manager工具来生成NuGet包。可以右键单击项目,选择“生成”->“生成NuGet包”来生成包。生成的NuGet包文件(.nupkg)可以在项目的输出目录中找到。

推荐的腾讯云相关产品和产品介绍链接地址:

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求和情况进行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用GUI工具高效构建你自己Nuget丰富基础信息添加要包含文件The end

起始界面如下所示,比官方文档上那一个版本要酷炫多了,但是不止于酷炫哦 ? 创建nuget工具 丰富基础信息 在点击Create a new package后,是一个简洁界面 ?...最后有两项特别重要了; Dependencies:依赖,这个是否依赖其它,当然你可以把依赖其他直接拷贝包含进来,但是这就完全违背了nuget初衷,如果你所依赖项目没有nuget,你可以联系原作者后者帮助打包为...而在添加这些文件夹时候,可以通过右键点击文件夹,然后选择Add .NET Folder快速添加不同版本名字缩写文件夹,这是你使用命令行方式创建nuget所享受不到快捷方式,很酷吧。...上文中提到过,党Content文件夹包含了后缀名为.transform文件时,nuget将会merge目标文件,比如示例中使用就是一个ASP.NET MVC扩展,它可以提供给ASP.NET MVC...使用 在VS中创建一个项目,打开nuget package窗口,在搜索框中输入上文中定义ID:ListControlExtension或者直接在命令行工具中输入命令:Install-Package

1.2K60

Roslyn 通过 Nuget 管理公司配置

,我都是在做底层库,于是我就需要创建很多个项目,只要我发现某个功能用到一些代码可以在其他功能使用,我就会将这个代码抽到一个库。...,通过这里写内容就可以通过 nuget 安装到自己项目 但是现在还不能做出一个 nuget ,还需要在项目文件添加一些内容,右击工程点击编辑项目文件,在项目文件添加一些代码,请看下面代码 <Project...安装本地 nuget 方式很简单,通过在 nuget 设置方法,具体请看Roslyn 通过 nuget 统一管理信息 这时我创建一个 dotnet core 项目,然后在这个项目安装这个...TargetFramework 修改为 TargetFrameworks 添加了其他框架,具体可以使用请看从以前项目格式迁移到 VS2017 新项目格式 现在打出来还有影响到安装这个项目,...NuGet 属性(使用这些属性,创建 NuGet 就可以不需要 nuspec 文件啦) - walterlv 从以前项目格式迁移到 VS2017 新项目格式 Roslyn 通过 nuget 统一管理信息

62720

使用dotnet Cli向nuget发布

前置 安装勾选.NET Core开发套件Visual Studio; 安装dotnet Cli 从VS2017开始,dotnet Cli已经自动在.NET开发套件中被安装;使用SDK-style format...构建时生成Nuget:顾名思义,除打包命令,构建时也会自动生成nuget; 标记:帮助其他人定位你,了解包能力。 给package设定一个唯一id,并填写其他属性。...发布 有了.nupkg文件,你可以从nuget.org获取一个API key(这个Key标记了你这个nuget账户),结合dotnet cli发布。...如果您确认使用是有效 API key,则此错误提示不准确,实际是命名冲突,从以上错误“权限”部分无法完全看出这一点。更改程序标识符,重建项目,重新创建.nupkg文件,然后重试push命令。...其他一些包管理操作,请在nuget包管理中心倒腾。

1.1K10

Nuget使用(创建和发布package)

1,使用dotnet CLI 创建和发布: 生成 首先将现有的.NET类库项目用于要打包代码,或创建一个简单代码 1.创建一个名为文件夹AppLogger。...2.打开命令提示符并切换到AppLogger文件夹。 3.键入dotnet new classlib,它使用项目的当前文件夹名称。这将创建新项目。...创建密钥后,选择“ 复制”以在CLI中检索所需访问密钥 ? 转到包含.nupkg文件文件夹。 运行dotnet nuget push命令,指定程序名称(唯一程序ID) ?...配置程序属性 在解决方案资源管理器,点击“ 属性”菜单命令,然后选择“ 程序”选项卡。 ? 属性 选择打包,给您包裹一个唯一标识符,并填写其他所需属性 ?...检查“ 输出”窗口以获取详细信息(类似于以下内容),其中包含软件文件路径 (可选)在构建时生成软件:在软件选项卡中,选择在build上生成NuGet软件。 ? 发布同之前一样

79420

开始第一个插件【适用于v1.0-1.1】

本示例将会使用”鹦鹉学舌”这个小插件实现来演示如何使用Newbe.Mahua实现第一个机器人插件。 插件功能 自动将发送者消息回发给发送人,鹦鹉(英文:Parrot)学舌。...环境要求 .Net Framework 4.5.2 及以上 Visual Studio 2015 update 3 及以上(推荐 2017) 以下内容均采用vs2017作为演示IDE 新建项目 项目名称至少需要包含三部分...安装nuget ? 打开nuget包管理器,搜索Mahua。根据你希望运行机器人平台安装Newbe.Mahua.*nuget。...本示例希望运行在多个平台上,因此安装以下nuget: Newbe.Mahua.CQP Newbe.Mahua.Amanda 若想要安装最新开发版,可以勾选”包含预发行版”。...PluginInfo是插件运行必须注册其他内容则不是必要!!!

45100

Roslyn 通过 nuget 统一管理信息

我就想在一个地方更新时间,然后在其他地方都可以通过安装 nuget 方式自动更新或通过更新 nuget 方式更新。...创建文件夹需要包含下面的文件 ├── lindexi.nuspec │ ├─ build ├─────── lindexi.props └─────── lindexi.targets 这里文件包含内容很少...一个可以使用需要包括下面内容 id 也就是唯一表示字符串 version 版本 authors 作者 description 描述 <?...现在重新压缩一下,修改后缀名 注意压缩需要将文件包含在根目录,也就是不能一个文件夹再放文件 安装本地 做出来 nuget 需要安装在一个项目,下面先创建一个控制台项目,在这个项目设置 nuget...在添加下面写出本地打包文件,也就是 lindexi.1.0.0.nupkg 文件所在文件夹和随意一个命名 ? 记得点击更新保存,然后再选择刚才设置文件夹 ?

59520

Roslyn 通过 nuget 统一管理信息

我就想在一个地方更新时间,然后在其他地方都可以通过安装 nuget 方式自动更新或通过更新 nuget 方式更新。...创建文件夹需要包含下面的文件 ├── lindexi.nuspec │ ├─ build ├─────── lindexi.props └─────── lindexi.targets 这里文件包含内容很少...一个可以使用需要包括下面内容 id 也就是唯一表示字符串 version 版本 authors 作者 description 描述 <?...现在重新压缩一下,修改后缀名 注意压缩需要将文件包含在根目录,也就是不能一个文件夹再放文件 安装本地 做出来 nuget 需要安装在一个项目,下面先创建一个控制台项目,在这个项目设置 nuget...安装 右击项目nuget点击设置,然后点击添加 在添加下面写出本地打包文件,也就是 lindexi.1.0.0.nupkg 文件所在文件夹和随意一个命名 记得点击更新保存,然后再选择刚才设置文件夹

23110

Visual Studio 2017各版本安装离线下载、安装全解析

VS2017离线包含所有可选项)。好了,接下来将会分为四部分来叙述,分别是离线下载安装文件、离线安装VS2017、更新离线文件以及如何通过已下载版本来减少下载其它版本下载量方法。...③根据自己下载VS2017版本,在打开命令提示符窗口输入下面对应命令并点击回车,等待程序启动即会开始下载(以下命令用于下载完整版离线包含全功能以及全语言,其中红色部分为下载文件存放路径,根据自身情况用户可自行更改...如果你已经下载好了其中一版,均可进行如下操作: ①创建两个新文件夹,根据你自己爱好重命名,最好是英文名。...第五部分:附加 这部分呢是附加一部分,信息是完全下载(包含全功能全语言社区版和企业版详细文件信息,以及他们差集文件夹信息;最大是企业版,最小是企业版和社区版文件夹差集信息。...最后就是,各版本离线里面至少含以下关键字文件夹内容是完全一模一样,就是:SDK、.NET、Xamarin、Unity、Cocos、Unreal、Linux、Mac、iOS、Android、emulator

3.6K10

C#.NET 如何创建带有本机依赖多框架多系统 NuGet

正常如果你想写一个 .NET NuGet ,直接打包就好了,你引用程序集会出现在 NuGet lib 文件夹内。然而,如果我们 NuGet包含本机依赖的话怎么办呢?...---- 我们项目需求 假设我们要做一个 NuGet Walterlv.MixPackage,包含以下内容一个要被引用托管程序集 Walterlv.MixPackage.dll 一个封装了本机代码...所以如果你不是有特别需要的话,最好还是选单。 第一步:创建一个普通类库 第二步:将本机依赖文件拷至对应文件夹下 这里,我们建了一个“Assets”文件夹,用来放 NuGet 零散文件。...,也可以在这里放专门引用程序集,而不用像这样拿一个 x86 程序集来无意义地增加 NuGet 大小。...NuGet 都推送到 NuGet 服务器上去之后,你就可以在你业务中使用这两个 NuGet 包了: 如果你只做了一个,那么直接引用这个单即可 如果你做是双包,那么引用其中托管一个即可,

47450

Roslyn 如何在 Target 引用 xaml 防止文件没有编译

首先来创建一个空白 WPF 程序,使用从以前项目格式迁移到 VS2017 新项目格式方法修改 WPF 程序为新项目格式,然后开始来修改 xaml 加入时间。...一个空白 WPF 程序会包含这些内容 compile 编译文件 App.xaml.cs MainWindow.xaml.cs Program.cs Properties\AssemblyInfo.cs...很多时候可以使用 Visible="False" 隐藏文件,但是如果这个文件刚好放在一个文件夹里面,那么这个文件夹将会被用户看到。...源代码打包项目是为了解决很小代码,都需要做出一个 nuget ,这个 nuget 是 dll 也就是软件会引用太多 dll ,大家都知道如果引用 dll 多了,软件启动速度也就是变慢了。...所以我就使用打包 nuget 但是引用是源代码方式,这样开发者在安装 nuget 之后可以快速调试安装源代码。

1K10

Roslyn 如何在 Target 引用 xaml 防止文件没有编译

首先来创建一个空白 WPF 程序,使用从以前项目格式迁移到 VS2017 新项目格式方法修改 WPF 程序为新项目格式,然后开始来修改 xaml 加入时间。...一个空白 WPF 程序会包含这些内容 compile 编译文件 App.xaml.cs MainWindow.xaml.cs Program.cs Properties\AssemblyInfo.cs...很多时候可以使用 Visible="False" 隐藏文件,但是如果这个文件刚好放在一个文件夹里面,那么这个文件夹将会被用户看到。...,都需要做出一个 nuget ,这个 nuget 是 dll 也就是软件会引用太多 dll ,大家都知道如果引用 dll 多了,软件启动速度也就是变慢了。...所以我就使用打包 nuget 但是引用是源代码方式,这样开发者在安装 nuget 之后可以快速调试安装源代码。

71420

理解 C# 项目 csproj 文件格式本质和编译流程

NuGet 中以链接形式包含到项目中,并且此文件在 Visual Studio 解决方案列表中不可见。...当然如果你非常感兴趣,还可以阅读我另外几篇关于 Target 使用相关文章: 如何编写基于 Microsoft.NET.Sdk 跨平台 MSBuild Target - 吕毅 如何创建一个基于命令行工具跨平台...NuGet 工具 - 吕毅 如何创建一个基于 MSBuild Task 跨平台 NuGet 工具 - 吕毅 每次都要重新编译?...而旧格式需要在 csproj 文件末尾添加如下代码才可以获得其中一个 NuGet 功能支持: <Import Project=".....将 WPF、UWP 以及<em>其他</em>各种类型<em>的</em>旧 csproj 迁移成基于 Microsoft.NET.Sdk <em>的</em>新 csproj - 吕毅 自动将 <em>NuGet</em> <em>包</em><em>的</em>引用方式从 packages.config

2.5K10

dotnet 打包 NuGet 配置属性大全整理

本文整理 dotnet 打包 CBB 组件为 NuGet 时可以使用配置各个属性 本文将会持续更新,可以通过搜 《dotnet 打包 NuGet 配置属性大全整理 林德熙》 找到我主站博客,避免各个备份地址陈旧内容误导...- walterlv 一些前置知识博客: 理解 C# 项目 csproj 文件格式本质和编译流程 - walterlv 项目文件中已知 NuGet 属性(使用这些属性,创建 NuGet 就可以不需要...,标识符在 nuget.org 或所在私有的 NuGet 源中必须是唯一。...如此可以方便在发布给其他开发者使用时,其他开发者在调试时可以获取到只读源代码,从而让其他开发者更好进行调试 <!...比如真有一个叫 Xx.Symbols 项目就凉凉。此格式已被淘汰 .snupkg : 专门定义符号格式,可以只包含符号 PDB 文件 <!

1.3K20

Roslyn 打包 NuGet BuildTransitive 文件夹用于穿透依赖传递拷贝文件

,修改放在 NuGet BuildTransitive 文件夹。...其他逻辑都和之前相同 敲黑板,只需要将原本放在 NuGet 里面的 Build 文件夹,重命名为 BuildTransitive 即可 以下是告诉大家如何制作方法,以及更多细节。...本文代码可以在本文最后拿到,建议大家试一下本文测试代码 回顾一下通过 csproj 创建 NuGet 方法,如 Roslyn 打包自定义文件到 NuGet 方法,咱创建一个叫 BuildTransitivePackage...规则,需要让放在 Build 文件夹 targets 和 props 文件命名NuGet 命名相同,咱可以在 csproj 上做一些更改,让以上 targets 和 props 文件放入到...文件夹 Package.targets 文件是没有被执行,符合预期 本文所有代码放在 github 和 gitee 欢迎访问 可以通过如下方式获取本文源代码,先创建一个文件夹,接着使用命令行 cd

63910

从零开始制作 NuGet 源代码(全面支持 .NET Core .NET Framework WPF 项目)

默认情况下,我们打包 NuGet 时,目标项目安装我们 NuGet 会引用我们生成库文件(dll)。除此之外,我们也可以专门NuGet 工具,还可以做 NuGet 源代码。...我们接下来创建一个完整解决方案,这个解决方案包括: 一个将打包成源代码项目 一个调试专用项目(可选) 一个测试源代码项目(可选) 第一步:创建一个 .NET 项目 像其他 NuGet 引用项目一样...src 文件夹 Foo.cs 是我随意创建一个类,你就想往常创建正常类文件一样创建一些类就好了。...注意,我们需要写是四个文件内容,不要弄错了。 如果我们做好 NuGet 源码包被其他项目使用,那么这四个文件中其中一对会在目标项目被自动导入(Import)。...-- 我们添加其他资源需要在这里 Link 到一个统一目录下,以便在此项目和安装 NuGet 目标项目中可以用同样 Uri 使用

50520

BI如何实现用户身份集成自定义安全程序开发

编写自定义安全提供程序 配置自定义安全提供程序 注意事项 编写自定义安全提供程序 编写一个自定义安全提供程序步骤如下: (1) 创建项目 使用Microsoft Visual Studio 2017...(以下简称VS2017),创建一个项目,类型选为 Visual C# - .NET Standard - 类库(.NET Standard),输入项目名称,如:MySecurityProvider:....1.0.2.nupkg GrapeCity.Enterprise.Identity.SecurityProvider.1.0.3.nupkg 单击VS2017“工具”菜单NuGet包管理器”>“...示例代码文件夹\bin\debug中也包含Build产物DLL,可直接配置为Wyn安全提供程序。...GetUserContextAsync 使用给定token获取用户上下文信息。用户上下文信息包含哪些内容可以是随意

52830

SourceYard 制作源代码 控制台项目WPF 程序调试

在我之前博客C# 金额转中文大写已经有了代码,可以从码云复制 复制代码因为没有命名空间,需要手动添加,于是现在就创建一个项目,这个项目包含一个类。 ?...这里两个不同文件,其他是传统 Nuget ,也就是 TheLib.1.0.2.nupkg 里面包含 dll 请打开文件很快就可以看到 ?...再创建一个项目,这个项目尝试使用 dotnet core 项目 ? 右击项目管理 Nuget 安装源代码,然后在主函数添加相同测试代码 ?...现在右击重新编译,就可以在输出文件夹找到输出两个 Nuget 创建一个 WPF 程序,通过设置本地 Nuget 文件夹,安装源代码,然后在界面使用刚才用户控件,运行就可以发现成功使用了用户控件...打开 WPF 程序输出文件夹,可以发现这个文件夹里面只有一个 exe 源代码已经放在 exe 里 调试 在将项目制作 Nuget 时候,就有小伙伴吐槽在开发时候,如果使用 Nuget 安装,很难进行调试

1.1K20

将 WPF、UWP 以及其他各种类型旧 csproj 迁移成基于 Microsoft.NET.Sdk 新 csproj

NuGet 程序。...使用NuGet 程序还原”可下载这些程序。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少文件是 {0}。...从对比中我们就能明显看出新 csproj 文件优势: 文件小,易读易写 在版本管理中更容易解冲突 NuGet 引用没有路径要求,这意味着开发者可以任意指定 NuGet 位置 嵌套引用不需要重复指定...不过,如果这是一个启动项目(exe),那么还需要添加应用程序定义 ApplicationDefinition 和其他启动属性。...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://walterlv.com ),不得用于商业目的,基于本文修改后作品务必以相同许可发布

1.4K20
领券