El *_*oZo 5 .net visual-studio nuget
我和我的团队构建了我们自己的框架,我们在许多项目中使用。我们曾经将框架的项目包含在所有其他项目中,但后来我们决定将框架放入 nuget 服务器上的 nuget 包主机中,以便我们可以在开发过程中更轻松地进行版本控制和传播框架。
一切都工作正常,除了但有一些明显的副作用。
Visual Studio 无法直接查看 nuget 的 dll 本身,因此 VS 搜索引擎无法查找我的 nuget 中存在的函数。出于同样的原因,我认为我无法再在项目中看到框架的源代码,只显示元数据。
我知道 nuget 包不显示其自己的源代码是正常行为,但我想知道是否可以将 nuget 包设置为“可信模式”,以便 Visual Studio 能够搜索其中的函数开发人员能够直接查看源代码(当然无法编辑它)。
多谢。
\n\n\n这样 Visual Studio 将能够搜索其中的功能,并且开发人员能够直接查看源代码(当然无法编辑它)。
\n
如果我知道你是正确的,你想访问 nuget 包中的代码但无法编辑?如果是,您可以尝试创建符号包,允许使用者在 Visual Studio 调试器中单步执行您的包代码。
\n\n我们的做法(和工作方式):
\n\n创建“*.symbols.nupkg”。
将符号包部署到SymbolSource服务器。
配置 IDE,包使用者可以将https://nuget.smbsrc.net/添加到 Visual Studio 中的符号源。
使用 NuGet(从我们的 SymbolSource 服务器)将所需的库添加到项目中。\n调试。
详细信息可以参考创建符号包。
\n\n如果这些包不适合在 NuGet Gallery/SymbolSource 上发布,您可以将 *.nupkg 和 *.symbols.nupkg 文件放在网络共享上的 NuGet 本地源上。该方法的详细内容可以参考类似的问题:
\n\n是否可以在网络共享上的 NuGet 本地源中同时托管常规包和符号包?
\n\n此外,在这种情况下,您不必担心开发人员会编辑源代码,因为所有包都下载到本地包文件夹中,编辑不会影响网络共享上的源代码,直到您重新发布它。
\n\n更新详情:
\n\n您应该添加断点并按 F11 单步执行源代码:
\n\n\n\n通过F12更新检查dll中的源代码:
\n\n根据MSDN文档\xef\xbc\x9a
\n\n\n\n\n调试器在以下位置查找源文件:
\n\nRun Code Online (Sandbox Code Playgroud)\n>1. Files that are open in the IDE of the Visual Studio instance that launched the debugger.\n\n>2. Files in the solution that is open in the VS instance.\n\n>3. Directories that are specified in the "Common Properties" / "Debug Source Files" page in the properties of the solution.\n\n>4. The source information of the .pdb of the module. This can be the location of the source file when the module was built, or it can be a command to a source server.\n
所以如果你想通过F12直接访问dll文件中的源代码,你应该在解决方案中添加源代码。您可以在解决方案中创建一个新项目来存放源文件,并将该项目添加为参考项目。这将使您的解决方案/项目变得混乱,但由于它将被签入源代码控制,所有团队成员将自动能够调试到源文件。
\n\n此外,应该推荐ReSharper ,您可以通过转到ReSharper/选项/外部源来启用它,然后向上移动“来自符号文件的源”。然后在“来自符号文件的源”选项卡中,单击“高级”,您可以在其中映射源文件夹。
\n| 归档时间: |
|
| 查看次数: |
5318 次 |
| 最近记录: |