首页
学习
活动
专区
圈层
工具
发布

让你发布的nuget包支持源代码调试

Source Link 是一组包和规范,用于描述可以嵌入到符号、二进制文件和包中的源代码控制元数据。 Visual Studio 15.3+ 支持在调试时从符号读取源链接信息。...如果您是从原始 Source Link 文档到达这里的 - 您不需要使用SourceLink.Create.CommandLine. 您只需要安装下面列出的软件包。...首先, 先介绍如何源代码调试支持Sourcelink的包. 我们仅需要修改vs的配置....我们就可以 F11 进入源代码了 就是这么简单, 就是这么顺滑. ? 然后, 本文的重点来了, 让我们自己的nuget包也支持这么棒的功能!!!...到这里就基本完成了, 把包发布到nuget package上就可以, 可以是nuget.org, 也可以是myget, 更可以你公司内部的私有nuget package 服务器.

2.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何从零开发一个NuGet软件包?

    但是,您是否曾经尝试并创建过一个nuget包呢?Nuget软件包比较容易引入到类库中。因此,可以使用NuGet软件包管理器将nuget软件包添加到任何项目中。...现在已将其嵌入.nupkg中,但在早期版本的NuGet中只能定义为url。 .nuspec nuspec是关于nuget包的元数据文件。在早期版本中,它曾经用于打包nuget包。...但是在新的dotnet CLI中,此文件是由roslyn编译器从您的.csproj文件生成的。...我将展示如何将它们转换为可移植的nuget包。因此,让我们从第一步开始。 1-选择目标框架 选择目标框架是非常重要!只需计划你的项目并定义依赖项即可。...转到nuget.org并登录到你的帐户。然后导航到“发布”选项卡,并将您的.nupkg文件拖放到该页面中。填写有关包裹的信息字段并提交。仅此而已!这是在nuget.org上发布软件包的最简单方法。

    2.1K30

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

    -- 我们将 src 目录中的所有源代码映射到 NuGet 包中的 src 目录中。...如果还不清楚,请阅读博客: 让一个 csproj 项目指定多个开发框架 体验和查看 NuGet 源代码包 也许你已经从本文拷贝了很多代码过去了,但直到目前我们还没有看到这些代码的任何效果,那么现在我们就可以来看看了...++ 微软自称从 .NET 5.0.2 开始,可通过 IncludePackageReferencesDuringMarkupCompilation 属性来支持在 NuGet 包中生成源代码...-- 我们将 src 目录中的所有源代码映射到 NuGet 包中的 src 目录中。...-- 我们将 assets 目录中的所有源代码映射到 NuGet 包中的 assets 目录中。

    2.7K20

    Unity3D 入门:如何管理 Unity 项目中的 NuGet 包?使用第三方 NuGet 包管理器——NuGetForUnity

    Unity 项目虽然可使用 C# 项目作为脚本,却并没有提供一种类似 NuGet 的第一方包管理器。不过,还是有第三方包管理器可以用,为 C# 脚本应用现有的库提供方便。...这很像是 Visual Studio 中自带的 NuGet 包管理器,不过这是适用于 Unity 的第三方 NuGet 包管理器。...安装 NuGet 包 就从上面所述的菜单那里打开,你可以进入 NuGet 包的搜索与安装界面。输入并找到你想安装的 NuGet 包,然后点击 Install 即可。...还原 NuGet 包 正常情况下,你打开别人上传到版本管理中的仓库后,仅仅启动 Unity 编辑器就可以完成 NuGet 包的还原。...在微软的 文档中,描述 NuGet 包安装的方法是手工的,对于普通的没有依赖的 NuGet 包来说问题不大,不过如果 NuGet 包包含依赖的话,那手工处理的工作量就有点大了,尤其是依赖有嵌套,出现层层嵌套的依赖的时候

    4.6K41

    自动将 NuGet 包的引用方式从 packages.config 升级为 PackageReference

    自动将 NuGet 包的引用方式从 packages.config 升级为 PackageReference 发布于 2018-04-24 10:03...检查升级后的兼容性问题 packages.config 的 NuGet 包的管理方式有些功能是 PackageReference 没有的。...install.ps1 的存在是因为 packages.config 不支持 PackageReference 中的一些新特性(例如 NuGet 包中新的目录结构,例如包中自带的 msbuild targets...使用 content 方式指定的内容资产将失效 PackageReference 使用 contentFiles 来管理内容资产,这样可以更好地在多个依赖包之间传递和共享。...而 PackageReference 的引用方式是自动管理依赖版本的,只要每个包都在允许的版本范围之内,就自动选择版本,并显示在解决方案的引用中。

    2.5K20

    项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦)

    项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) 发布于 2018-05-10 13:49...-- 默认是 true,如果指定为 false,那么项目编译输出的 dll 文件将不会被打包到 NuGet 包中。...例如 Pack 属性可以额外指定一或一组通配符文件需要被打包到 NuGet 包中;PackagePath 则指定了打包到 NuGet 包的路径(NuGet 会通过扩展名来自动识别这是文件夹还是文件,所以可以通过这个属性来重新指定名称... 引用的项目或包中的指定部分是本项目的依赖项。默认为 all。 引用的项目或包中的指定部分不是本项目的依赖项,应该排除。... 引用的项目或包中的指定部分依然是本项目的依赖项,但是在打 NuGet 包时不作为依赖项(不会传递到下一个项目)。

    3K10

    内网搭建NuGet服务器,实现像Maven管理jar包一样,管理dll,搭建公司内部的dll管理平台

    内网搭建NuGet服务器,实现像Maven管理jar包一样,管理dll,搭建公司内部的dll管理平台,避免不同版本到处拷贝引起的版本冲突和dll更新混乱的问题 1.新建一个ASP.NET Web应用程序...2.在项目引用的右键菜单中,对应的管理NuGet程序包中,安装对应的NuGet.Server的包: ? ? 随后项目文件内容如下: ? 可能会报错: ?...注释掉web.config中对应的节点就可以: ? 注释完以后再次启动: 随后,便可以把项目的内容,部署到指定的服务器上。...然后还有一个最最关键的问题: 笔者在第一次安装的过程中,在安装到一半的时候,反复弹出警告的内容, ?...严重性 代码 说明 项目 文件 行 禁止显示状态警告 一些 NuGet 包是使用不同于当前目标框架的目标框架安装的,可能需要重新安装。

    1.7K30

    Vs 中关于项目中的某 NuGet 程序包还原失败:找不到“xxx”版本的程序包“xxx”

    问题:    首先出现这个bug的是在我的vs2017社区版的ide上,这两天使用了出现了一个非常神奇的问题,就是我程序中的nuget包总提示找不到源文件,并且我点击Nuget还原的话还一直提示着一个问题...严重性 代码 说明 项目 文件 行 禁止显示状态 错误 项目 JJHL.WEB 的 NuGet 包还原失败: 找不到“11.0.2”版本的程序包“Newtonsoft.Json”。...从这里我发现了我的nuget找不到对应的源文夹的话,它只会前往我的c盘下的,C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\ 这个位置找相应的源包...解决方法: 修改NuGet包管理器的源为: https://www.nuget.org/api/v2/ 单击工具>选择NuGet管理器>程序包管理器设置 ?...选择NuGet包管理器>程序包源>添加获取包源位置(https://www.nuget.org/api/v2/)名称可随意 ? 最后再重启vs,然后在点击NuGet还原就好了!!!

    5.1K40

    基于 Roslyn 同时为 Visual Studio 插件和 NuGet 包开发 .NETC# 源代码分析器 Analyzer 和修改器 CodeFixProvider

    本文将基于 Roslyn 开发一个 C# 代码分析器,你不止可以将分析器作为 Visual Studio 代码分析和重构插件发布,还可以作为 NuGet 包发布。...可以作为 Visual Studio 插件安装和使用,也可以作为 NuGet 包安装到项目中使用(无需安装插件)。...在创建完项目之后,你可选可以更新一下项目的 .NET Standard 版本(默认是 1.3,建议更新为 2.0)以及几个 NuGet 包。...你可以再看看下面的动图: 发布 发布成 NuGet 包 前往我们分析器主项目 Walterlv.Demo.Analyzers 项目的输出目录,因为本文没有改输出路径,所以在项目的 bin\Debug...我们可以找到每次编译产生的 NuGet 包。 如果你不知道如何将此 NuGet 包发布到 nuget.org,请在文本中回复,也许我需要再写一篇博客讲解如何推送。

    2.7K30

    可集成到文件管理器,一句 PowerShell 脚本发布某个版本的所有 NuGet 包

    要发布 NuGet 包,只需要执行命令 nuget push xxx.nupkg 即可,或者去 nuget.org 点鼠标上传。...不过,如果你有很多的 NuGet 包并且经常需要推送的话,也可以集成到 Directory Opus 或者 Total Commander 中。...---- NuGet 推送命令 NuGet 推送命令可直接在微软官方文档中阅读到: NuGet CLI push command - Microsoft Docs 在你已经设置了 ApiKey 的情况下...://api.nuget.org/v3/index.json 或者推送此文件夹下 0.8.0-alpha 版本的所有 NuGet 包: 1 nuget.exe push *.0.8.0-alpha.nupkg...*.0.8.0-alpha.nupkg -Source https://api.nuget.org/v3/index.json 于是,当我选中了一个包,按下这个工具栏按钮之后,就可以推送与这个包相同版本的所有的

    1.4K30

    在制作跨平台的 NuGet 工具包时,如何将工具(exedll)的所有依赖一并放入包中

    在制作跨平台的 NuGet 工具包时,如何将工具(exe/dll)的所有依赖一并放入包中 2018-07-03 13:30 NuGet 提供了工具类型的包支持...但是,默认情况下,NuGet 不会将这些工具的依赖一起打包进入 NuGet 包 nupkg 文件内,这就使得功能比较复杂的跨平台 NuGet 工具包几乎是无法正常工作的。...本文将介绍将这些依赖加入 NuGet 包中的方法,使得复杂的工具能够正常使用。...太早了依赖文件还没有生成,太晚了 NuGet 包中即将打的文件早已确认,Include 了也没用。...然后,我们就可以把输出目录中除了 NuGet 自然而然会帮我们打入 NuGet 包中的所有文件都加入到 NuGet 包中的对应目录下。 具体来说,是将下面的 Target 添加到项目文件的末尾。

    5K30

    在项目文件 MSBuild NuGet 包中编写扩展编译的时候,正确使用 props 文件和 targets 文件

    从零开始制作 NuGet 源代码包(全面支持 .NET Core / .NET Framework / WPF 项目) - walterlv 如何创建一个基于 MSBuild Task 的跨平台的 NuGet...工具包 - walterlv 如何创建一个基于命令行工具的跨平台的 NuGet 工具包 - walterlv 当我们创建的 NuGet 包中包含 .props 和 .targets 文件的时候,我们相当于在项目文件...-- 当生成 WPF 临时项目时,不会自动 Import NuGet 中的 props 和 targets 文件,这使得在临时项目中你现在看到的整个文件都不会参与编译。...WPF 临时项目不会 Import NuGet 中的 props 和 targets 可能是 WPF 的 Bug,也可能是刻意如此。...源代码包(全面支持 .NET Core / .NET Framework / WPF 项目) 而下面的属性适合写到 .targets 里面,因为这里使用到了其他的属性: 1 2 3 4 5 6 7 8

    4K20

    C# 搭建自己的NuGet服务器,上传自定义NuGet包

    在VS中修改NuGet引用路径 注意把自定NuGet放在首位,这样每次搜索都默认从MyNuGet开始。 以上就成功部署了自己的NuGet服务器了。...打包操作 打开NuGet Explorer 如何修改之前已经打好的包 修改包只需要删除之前Package contents中的dll引用 重新的添加然后保存即可。...NuGet执行的相关步骤: 1.先检查package.config文件从上往下逐一扫描,当Package文件架为发现包则自动从服务器下载安装。 VS2012及后已经集成NuGet相关服务。...通过项目管理工具SVN/TFS等管理源代码,我们只需要上传源代码而无需上传Packages文件架,客户端获取代码重新编译会自动恢复所依赖的package,极大的增加了 代码获取的速度。...通过自定义NuGet可以维护代码中插件版本一致性,此外可将公共代码打包成NuGet包,提高了代码重用性。

    1.4K20

    C# 搭建自己的NuGet服务器,上传自定义NuGet包

    在VS中修改NuGet引用路径 ? 注意把自定NuGet放在首位,这样每次搜索都默认从MyNuGet开始。 以上就成功部署了自己的NuGet服务器了。...打包操作 打开NuGet Explorer ? ? 如何修改之前已经打好的包 修改包只需要删除之前Package contents中的dll引用 重新的添加然后保存即可。...NuGet执行的相关步骤: 1.先检查package.config文件从上往下逐一扫描,当Package文件架为发现包则自动从服务器下载安装。 VS2012及后已经集成NuGet相关服务。...通过项目管理工具SVN/TFS等管理源代码,我们只需要上传源代码而无需上传Packages文件架,客户端获取代码重新编译会自动恢复所依赖的package,极大的增加了 代码获取的速度。...通过自定义NuGet可以维护代码中插件版本一致性,此外可将公共代码打包成NuGet包,提高了代码重用性。

    2.7K50

    制作通过 NuGet 分发的源代码包时,如果目标项目是 WPF 则会出现一些问题(探索篇,含解决方案)

    在使用 NuGet 包来分发源代码时,如果目标项目是 WPF 项目,那么会有一大堆的问题。 本文将这些问题列举出来并进行分析。...---- 源代码包 源代码包不是 NuGet 官方的概念,而是林德熙和我在 GitHub 上做的一个项目,目的是将你的项目以源代码的形式发布成 NuGet 包。...在安装此 NuGet 包后,目标项目将获得这些源代码。 你可以通过以下博客了解如何制作一个源代码包。...制作源代码包 - 林德熙 这可以避免因为安装 NuGet 包后带来的大量程序集引用,因为程序集数量太多对程序的启动性能有很大的影响: C# 程序集数量对软件启动性能的影响 - 林德熙 然而制作一个 NuGet...包中自动 Import 的部分没有加入到依赖项中,所以实际上包中的 .props 和 .targets 文件都不会被 Import 进来,这可能造成部分 NuGet 包在 WPF 项目中不能正常工作。

    1.8K40

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

    在开发中,常常会用到很多工具类,这些小轮子很多的功能基本就只有一个类,如何对这些小轮子进行管理?通过复制代码还是通过 Nuget 管理?...右击项目管理 Nuget 安装源代码包,然后在主函数添加相同的测试代码 ?...这时就可以看到 SourceYard 的好处,通过 SourceYard 可以将源代码作为 Nuget 包,这样不但减少 dll 的数量,同时做到源代码的兼容。...在之前,无论是PCL还是多项目方式的 Nuget 包管理多个不同平台的兼容难度比较大,但是通过 SourceYard 只要源代码可以兼容就可以安装。...现在右击重新编译,就可以在输出文件夹找到输出的两个 Nuget 包 再创建一个 WPF 程序,通过设置本地的 Nuget 包的文件夹,安装源代码包,然后在界面使用刚才的用户控件,运行就可以发现成功使用了用户控件

    1.6K20
    领券