将调试信息嵌入到构建中不包含任何调试符号

2023-12-10

在我的项目中,在“构建 - 高级”部分中,我设置了“调试信息:嵌入”:

setting embedded debug info

另外,我还设置了一个选项将我的项目打包为 nupkg 文件。

setting create package

由于项目已构建,因此创建了一个 nupkg 文件,但是当我在调试另一个项目时使用此 nupkg 文件时,不包含任何符号,nupkg 文件内也不包含 PDB 文件。

我的问题:据我了解,我必须执行不同的步骤才能将 PDB 文件包含到我的 nupkg 中。在这种情况下,“调试信息:嵌入”选项的目的是什么,为什么它可用以及它有什么作用?由于即使启用此选项,结果包文件中也不包含调试信息。

谢谢。


将调试信息嵌入到构建中不包括任何 调试符号

Debugging information: Embedded意思是MSBuild将嵌入PDB文件直接写入目标DLL,意味着DLL不仅包含自己的DLL,还包含PDB文件的内容。 ADLL已经包含两个内容:本身和pdb file.

随着项目的构建,会创建一个 nupkg 文件,但是当我使用 在调试另一个项目时,此 nupkg 文件没有符号 包含,PDB 文件也不包含在 nupkg 文件内。

所以你不必担心丢失pdb文件,它已经被放入DLL中了。

如果你想在另一个项目本地调试 nuget 包的内容,你应该只打包源文件(cs files)到 nuget 包中。

1)在您的 lib 项目中添加此类包节点。

<ItemGroup>
        <Compile Update="Class1.cs" Pack="true" PackagePath="SourceFiles"></Compile>

        //add any source files like this if you want to debug their functions
</ItemGroup>

它将把源文件打包到一个名为的文件夹中源文件nupkg 的。

enter image description here

enter image description here

The purpose就是将源文件与nuget一起打包,这样可以直接从包中取出源文件进行后续调试,保证调试成功。

2)然后打包项目,在将这个新版本的包安装到项目中之前,应该先卸载旧的,清理 nuget 缓存或者直接删除下面的所有文件C:\Users\xxx(current user)\.nuget\packages,然后安装新的。

3)在调试项目之前,您应该首先将 nuget 的源文件添加到解决方案中。否则,VS调试时会报找不到nuget源文件的错误。

右键单击解决方案-->特性-->共同属性-->调试源文件

输入源文件将 nuget 文件夹放入其中:

enter image description here

此外, 有一个类似的问题.

这是关于我的测试的示例:

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将调试信息嵌入到构建中不包含任何调试符号 的相关文章

随机推荐

  • 如何禁用文本选择突出显示

    对于作用类似于按钮的锚点 例如 此 Stack Overflow 页面侧边栏上标题为问题 Tags and Users 或选项卡 是否有 CSS 标准方法可以在用户意外选择文本时禁用突出显示效果 我意识到这可以用 JavaScript 来完
  • 如何使用 C# 从另一个表单按下按钮?

    我有两种形式 Form1 进行屏幕截图 Form2 有 2 个按钮来操作 form1 创建的屏幕截图 Form1 还有一个 隐藏 按钮 其中包含保存屏幕截图的方法 我的问题 如何从form2中单击form1的按钮 和 如何检查 form1
  • 如何编写正则表达式来仅匹配数字、字母和破折号?

    我需要一个只接受以下内容的表达式 数字 普通字母 无特殊字符 空格也是不允许的 例子 正则表达式应该匹配 this is quite alright 不应该匹配 this is not so lright 您可以使用 A Za z0 9 这
  • Excel - 将一个范围内的数据匹配到另一个范围内,并从匹配数据右侧的单元格中获取值

    我不太擅长 Excel 公式 我正在尝试弄清楚如何首先检查列中是否存在单元格值 如果存在 则获取下一个单元格的值 具体来说 我有一系列细胞 从 B31 到 B39 我想要做的是查看这些值是否出现在单元格 F3 到 F12 中 如果出现 则将
  • WebGL等角投影

    好吧 这里要疯了 我正在做一些 WebGL 我正在尝试制作一个等距立方体 我不想使用 Three js 我想首先了解我的代码出了什么问题 我一直在研究 我能找到的唯一教程似乎是针对 OpenGL 的 无论如何 这是我的drawScene函数
  • 查询缓存不起作用

    我已经打开query cache 并为其分配内存 query cache limit 1048576 query cache min res unit 4096 query cache size 16777216 query cache t
  • 如何将多个 actionCreators 包装到一个 props 中?

    我收到以下错误 Uncaught TypeError this props dispatch is not a function 这是我的组件 import React from react import PropTypes from pr
  • 如何更改站点的 IIS Express 端口

    我想在从 Visual Studio 进行调试时更改网站运行的端口号 我正在使用 Visual Studio 2012 并且我正在为我的项目使用 ASP NET MVC 4 我想更改端口 随机端口或固定端口任何人都可以工作 只需更改端口即可
  • Django 使用 AJAX 动态 HTML 表刷新

    首先 我是 Django 新手 并且对 AJAX 和 jQuery 几乎完全不熟悉 我在本地开发 所以我试图实现一个 HTML 表 在 AJAX 的帮助下每 X 秒动态刷新一次 没有页面刷新 但我似乎无法让我的代码工作 我已经使用过这个问题
  • git:查找哪个合并将提交到当前分支

    我有许多分支 它们会定期合并 即我们可以将 A 合并到 B 中 然后将 B 合并到 C 中 然后将 A 合并到 D 中 然后将 D 合并到 C 中 等等 假设我有一个提交 X 我知道它最初是在A中引入的 然后以某种方式合并到C中 我在执行g
  • jQuery,按属性值选择,添加新属性

    我的 HTML 中有一个锚点 它有一个带有值的页面属性 因此 每次单击它时 我都会在 js 中使用页面属性值 现在我想设置一个带有背景颜色的样式属性来显示某个元素被选中 因此 我必须按页面属性选择元素 并向 a 元素添加一个带有值的新属性
  • 在 @FetchRequest 中输入一个动态值,以从 SwiftUI 中的核心数据中获取单个实体

    我在这里看到了相同类型的错误 但使用了不同类型的代码 所以我认为最好就此上下文提出一个新问题 我试图通过尝试传递一个字符串变量 用作查找该实体的键 来从核心数据中 查找特定实体 title into FetchRequest 这是我使用过的
  • BulkInsertCommand 在 Sync Framework 2.1 中失败

    有时 当我尝试使用 Sync Framework 2 1 从 SQL Express 同步到 SQL Server 时 会收到以下错误 一旦客户端收到此错误 他们必须重新初始化作用域 语法不会有任何问题 比如错误状态 因为它在很长一段时间内
  • 发布同名nuget包时在.net vNext中引用本地项目

    我正在尝试在 VS 2015 中使用新的 vNext 项目类型构建一个包 我想在同一解决方案 不是 vNext 中引用一个项目 但它试图为该项目找到一个 nuget 包 而不是直接引用它 我究竟做错了什么 version 1 0 0 dep
  • 在 Dreamweaver CS 5.5 中设置 codeigniter

    我正在寻找有关如何在 Dreamweaver CS 5 5 中设置代码点火器项目的信息 并像 Zend 框架一样使用代码提示 我成功地在 Dreamweaver CS5 5 中设置了 code igniter 方法是下载最新版本的 code
  • 使用 Python 3.6 抓取 Duckduckgo

    一个简单的问题 我可以从 duckduckgo 搜索的第一页抓取结果 然而 我正在努力进入第二页和后续页面 我已将 Python 与 Selenium Webdriver 结合使用 这对于首页结果来说效果很好 我用来抓取第一页的代码是 re
  • iPhone6(无显示缩放模式)UIMenuController 被截断

    我有一个问题UIMenuController在我的 iPhone 6 上 当我使用标准显示模式并且设备处于横向模式时 在 iPhone 6 Plus 上 两种模式都会出现问题 也许这取决于屏幕分辨率 在这种情况下 UIMenuControl
  • Keras 后端 - ImportError:无法导入名称 ctc_ops

    我已经安装了 keras 但是当我编写 import keras 时 出现错误 导入错误 无法导入名称 ctc ops 我想将后端从张量流更改为 theano 但找不到此处提到的 keras json https keras io back
  • 通过在彼此之间嵌套子查询来解决 MySQL 中 61 个表 JOIN 的限制

    我发现你可以通过使用子查询来绕过 MySQL 中 61 个表连接的限制 https stackoverflow com a 20134402 2843690 我正在想办法easily在我正在开发的程序中使用它来从 Magento 获取详细的
  • 将调试信息嵌入到构建中不包含任何调试符号

    在我的项目中 在 构建 高级 部分中 我设置了 调试信息 嵌入 另外 我还设置了一个选项将我的项目打包为 nupkg 文件 由于项目已构建 因此创建了一个 nupkg 文件 但是当我在调试另一个项目时使用此 nupkg 文件时 不包含任何符