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

为什么dotnet运行与VS代码调试完全不同

dotnet运行与VS代码调试完全不同的原因有以下几点:

  1. 运行环境不同:dotnet是一个跨平台的开发框架,可以在Windows、Linux和macOS等操作系统上运行,而VS代码是一个轻量级的跨平台代码编辑器,用于编写和调试各种编程语言的代码。dotnet可以通过命令行或者集成开发环境(IDE)进行运行,而VS代码则提供了更便捷的调试功能。
  2. 调试工具不同:dotnet提供了一套完整的调试工具,包括调试器、断点设置、变量监视等功能,可以帮助开发人员定位和修复代码中的问题。VS代码也提供了类似的调试功能,但是与dotnet相比,其调试工具可能更加简化和轻量级。
  3. 开发流程不同:dotnet开发通常采用编译和运行的方式,开发人员需要先编写代码,然后通过dotnet命令行工具或者IDE将代码编译成可执行文件,最后再运行该文件。而VS代码更加注重开发的实时性,可以在编辑代码的同时进行调试,无需手动编译和运行。
  4. 支持的编程语言不同:dotnet主要支持C#和F#等编程语言,而VS代码可以支持更多的编程语言,包括JavaScript、TypeScript、Python等。因此,dotnet运行与VS代码调试在支持的编程语言方面存在差异。

总结起来,dotnet运行与VS代码调试不同主要是因为运行环境、调试工具、开发流程和支持的编程语言等方面的差异。具体选择使用哪种方式取决于开发人员的需求和偏好。

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

相关·内容

dotnet 为什么开源的运行时仓库代码减少使用 Linq 语句

dotnet 开源的 runtime 运行时仓库里面,有微软的大佬说运行时仓库的代码应该减少使用 Linq 语句,那这又是为什么呢 微软的 Jan Kotas 大佬说了下面这段话,大概意思就是减少在运行时库里减少对...而 Günther Foidl 小伙伴就帮我问了一句为什么,难道是将会让单文件的体积,也就是输出的二进制文件体积比较大?...的,放心,没有性能问题 只是运行时库想要减少 JIT 创建泛形的类型的时间,因此减少使用而已 当然,本文只是裁几段话,没有很具体上下文含义。...尽管在获取进程的时候,性能是在获取的本机代码,但是多申请的内存是影响未来。这个意思是在调用这个方法的代码了解到这里的性能比较渣,因此将会有预期。...· Issue #40768 · dotnet/runtime

54610

如何在没有第三方.NET库源码的情况,调试第三库代码

安装dnSpy dnSpy是一款功能强大的.NET程序反编译工具,可以对.NET程序进行反编译,代替库文档的功能,代码丢失或者损坏可直接恢复,所以能在完全没有源码的情况下即时调试程序,甚至还能修改程序!...调试示例程序 打开dnSpy,将主程序引用的TestDll拖入: 可以看到反编译后的代码: 反编译出来的方法定义会和第三方源码可能不同,以下是一些可能导致不同反编译结果的因素: 编译器优化:不同版本的编译器可能会对代码进行不同的优化...,例如使用不同的算法、数据结构或者代码重排等。...这些优化可能会导致反编译出来的代码结构和顺序不同,本文示例使用 .NET 8开发,.NET Framework编译的库可能反编译出来源码几乎一致。...运行测试程序,并在dnSpy中给方法打断点,在调试菜单附加测试程序,就和VS中操作类似: 4. 调试.NET库方法 上面调试示例程序的方法可用于其他第三方.NET库,那么.NET自身库方法呢?

22420

如何使用 VS Code开发.NET Core应用程序

VS Code编辑器中运行调试代码, 要运行代码,我们可以: •在dotnet run命令中使用命令行工具。...通过使用命令行工具,我们只能运行代码, 它不会在浏览器中附加VS Code来显示结果,如果要浏览器编辑器连接,我们应该在dotnet run命令中使用一些附加命令,因此,最好使用内置选项在VS Code...如何设置断点和调试VS Code中的断点Visual Studio中的断点相同,我们可以在代码的左侧来设置断点。...dotnet test 前面的命令仅提供了整体运行测试用例的条件,我们不能调试测试,Visual Studio中的测试资源管理器类似,VS Code也具有 .NET Core Test Explorer...优点 •Visual Studio一样,Visual Studio Code也具有用于运行调试代码的工具:监视窗口,调试控制台,错误窗口,输出窗口,测试资源管理器和版本控制。

2.4K20

dotnet 使用 SourceLink 将 NuGet 链接源代码到 GitHub 等仓库

在发布 CBB 作为 NuGet 包的时候,我期望开发者在使用我的库进行调试,可以自动链接代码到对应打包的 GitHub 上的代码,可以从本地拿到对应的源代码进行调试。...其实找不到的问题没有找错的坑,因为开发者小伙伴也许因为 commit 找错了,而看到的不是实际运行代码,接着就开始有趣的调试 在 GitHub 的 Action 自动构建时,将会添加 GITHUB_ACTIONS...在 dotnet 里面使用 pdb 符号文件是用来方便 VS 等工具进行调试,这个文件的作用就是告诉调试工具,对应的代码和二进制 dll 的关系 而在 NuGet 的 nupkg 包不包含 pdb 文件...将 snupkg 文件上传到 nuget 服务器 添加了 SourceLink 的 CBB 底层库就可以在使用的时候,调试可以在 VS 上在调用堆栈里面跳转到对应的 GitHub 的源代码。...上完全开源: https://github.com/dotnet/sourcelink 除了在 GitHub 上能用之外,还支持 Gitlab 等仓库,只需要修改对应的 NuGet 包 GitHub:

1.4K30

Visual Studio Code安装C#开发工具包并编写ASP.NET Core Web应用

不过听说C# 开发工具包提供了一系列功能和扩展,从而极大的提高了VS Code中编写、调试和管理 C# 代码的体验。看到这个今天就不得不上手实战一下看看到底有没有官网描述的这么好用。...它与 C# 扩展协同工作,该扩展已更新为由新的完全开源的语言服务器协议 (LSP) 主机提供支持,打造了一个高性能、可扩展且灵活的工具环境,可以轻松地将新体验整合到适用于 VS Code 的 C# 中。...,它为您的C#开发提供了一系列强大的功能和实用工具,以帮助您更高效地编写、调试和维护代码。...使用以下命令运行应用程序:dotnet run 点击运行Now listening on: http://localhost:5191 创建一个UserModel namespace Test001...最后预览效果 实战感受 实战下来个人感觉C#开发工具包确实提升了VS Code中编写.NET的开发效率和体验,主要包括语法高亮、指令提示、代码补全、代码导航和调试支持等功能。

61220

使用 C# 写脚本的优势和方法

最重要的应该就是写的时候的效率了,千万不要和我吹 py 的编写效率比 C# 高哈,这完全取决于熟悉程度哦。千万记住,前提是咱不是天天写脚本的 调试方便,支持复杂的逻辑。...在说到调试方便的时候,就不得不说到最难调试的 bat 脚本了,这部分脚本的中间变量完全需要靠输出 使用方法 一句话跑起来 dotnet run 一句话就可以执行脚本了,执行方法就是进入到脚本所在的文件夹...我比较推荐在 VS 上创建,在 VS 里面新建一个 dotnet core 控制台应用就可以了。创建完成编写脚本,调试完成,发布。...而 dotnet run 命令提供了参数,可以让咱指定运行的是哪个文件夹的脚本 指定运行 Foo 文件夹里面的脚本,下面代码将会尝试执行 Foo 文件夹里面的脚本,但是前提是 Foo 文件夹里面仅有一个...,这里的命令能添加的参数特别多,请看 dotnet run command 而如果需要给运行的脚本传入参数,需要添加 -- 字符,在 -- 后面的命令就是传给脚本的参数,如下面代码 dotnet run

1.5K30

使用Visual Studio Code开发.NET Core看这篇就够了

我们可以期待更多很酷的扩展和功能来增强VS Code,这将使在这个轻量级,跨平台编辑器中的开发.NET Core应用程序更加流畅和有趣。赶紧跟着博主一起开始今天的文章吧! 为什么要写这篇文章?...VS代码的底部面板(终端所在的面板)的“ 问题”选项卡中显示相同的信息。这可以在下图中看到。 ? 修复错误并再次运行测试,以便所有测试都通过,我们可以再次看到绿色标记。...Visual Studio类似,我们可以通过单击源代码文件的左边距,或者将光标放在一行代码上并按F9,在源代码中设置行断点。断点在编辑器的左边缘显示为红点。 要开始调试,请按F5。...我们可以看到VS Code的Debug视图在编辑器的左侧打开。Debug视图显示调试相关的所有信息。我们还可以注意到编辑器顶部出现了一个调试工具栏。调试时,调试工具栏可用于代码导航选项。...这里调试试图的大部分功能跟vs2017差不多,因此这里不做过多地阐述了。

5.4K00

通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?

如果你足够熟悉CLR,那么你完全可以在一个非托管程序中通过调用运行库函数来定制CLR并执行托管代码。...为什么值类型存储在栈上 不同的类型拥有不同的编译时规则和运行时内存分配行为,我们应知道,C# 是一种强类型语言,每个变量和常量都有一个类型,在.NET中,每种类型又被定义为值类型或引用类型...事实上,我们在平常项目中代码编写的安全机制(业务逻辑身份验证、项目框架验证)这些平台级的安全机制没什么不同。...点击工具-选项-调试-常规,如果你之前没有在该配置栏配置过,那么你就勾选 启用源服务器支持 、启用.net Framework源代码单步执行,然后将 要求源文件原始版本完全匹配 给取消掉。...选择none则不生成任何调试信息,无法调试。选择full则允许将调试器附加到运行程序,生成pdb调试文件。选择pdb-only,自.NET2.0开始full选项完全相同,生成相同的pdb调试文件。)

4.3K30

通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?

如果你足够熟悉CLR,那么你完全可以在一个非托管程序中通过调用运行库函数来定制CLR并执行托管代码。...为什么值类型存储在栈上 不同的类型拥有不同的编译时规则和运行时内存分配行为,我们应知道,C# 是一种强类型语言,每个变量和常量都有一个类型,在.NET中,每种类型又被定义为值类型或引用类型。...点击工具-选项-调试-常规,如果你之前没有在该配置栏配置过,那么你就勾选 启用源服务器支持 、启用.net Framework源代码单步执行,然后将 要求源文件原始版本完全匹配 给取消掉。...通过上文得知,只需要一个txt记事本+csc.exe我们就可以开发出一个.NET程序,那么之相比,.NET提供的开发工具VS有什么不同呢?...选择none则不生成任何调试信息,无法调试。选择full则允许将调试器附加到运行程序,生成pdb调试文件。选择pdb-only,自.NET2.0开始full选项完全相同,生成相同的pdb调试文件。)

2.7K63

【实验手册】使用Visual Studio Code 开发.NET Core应用程序

NET Core应用程序... 5 练习3:使用 Visual Studio Code和 Omnisharp 调试 c# 代码... 12 任务1:从VS code启动调试器... 13 任务2:附加到进程...Visual Studio Code 是微软为广大开发人员提供的免费开源的跨平台代码编辑器,和其它流行的代码编辑器,如:Sublime, Atom一样,它非常小,运行速度快,同时通过各种插件支持不同开发语言的编写...不同的地方在于,VSC的插件不仅仅提供静态的语言高亮,自动语法检测和完成功能外;还提供更加高级的编译器服务支持,这使得VSC可以在一定程度上替代IDE的功能,进行代码的编译,调试和发布操作。...任务1:从VS code启动调试器 对于控制台和Web项目是非常简单的,只需在代码中设置断点,导航到调试窗口(ctrl + shift + d)并点击调试按钮 - “.Net Core Launch”选项应该默认选择...任务栏应显示您可以选择附加调试器的正在运行的进程的列表 - 在本示例中,我们将附加到正在运行dotnet网站进程。 ?

3.3K90

开篇有益-解析微软微服务架构eShopOnContainers(一)

,其不仅展示了.Net Core的跨平台性,更展示了VS2017的强大,所有代码都在VS2017下开发。...三、源代码 这套架构在Github上开源,地址:https://github.com/dotnet-architecture/eShopOnContainers 我们可以通过git把源代码clone下来...四、必要环境: 之前说过我们的应用是跨平台的,可以运行在任何支持Docker的操作系统之上,但在我们开发调试的时候,我们需要相应的环境才能进行调试(当然你也可以使用iisexpress进行调试) 1、64bit...进行Docker调试运行时会报错,为了这教程,我决定把我电脑升级到Win10,这样才能更好的展示。...如果你想在之前的系统下进行调试运行,除了安装Docker Toolbox外,您还需要安装: 1、NodeJS 2、Bower Docker for Windows 在win10或者server 2016

1.8K70

【实验手册】使用Visual Studio Code 开发.NET Core应用程序

Visual Studio Code 是微软为广大开发人员提供的免费开源的跨平台代码编辑器,和其它流行的代码编辑器,如:Sublime, Atom一样,它非常小,运行速度快,同时通过各种插件支持不同开发语言的编写...不同的地方在于,VSC的插件不仅仅提供静态的语言高亮,自动语法检测和完成功能外;还提供更加高级的编译器服务支持,这使得VSC可以在一定程度上替代IDE的功能,进行代码的编译,调试和发布操作。...任务1:从VS code启动调试器 对于控制台和Web项目是非常简单的,只需在代码中设置断点,导航到调试窗口(ctrl + shift + d)并点击调试按钮 - “.Net Core Launch”选项应该默认选择...任务2:附加到进程/网站 使用VsCode将调试器附加到正在运行的进程也非常简单,设置断点,从调试菜单中选择“.Net Core Attach”选项,然后进行调试。...任务栏应显示您可以选择附加调试器的正在运行的进程的列表 - 在本示例中,我们将附加到正在运行dotnet网站进程。 ?

5.1K102

三行脚本让 asp.net core 附加进程调试不再头痛

vs 的 asp.net core 进程调试的这个问题困扰了我好一段时间未曾解决,得空整理记录一下。...问题描述 一顿操作猛如虎运行 dotnet run 很多个应用程序(前后端分离,多个项目运行的场景) 然后打开项目选择【调试-附加到进程】(.net framework 要附加到 w3wp.exe,....如上图,完全不知道要附加到那个进程,最开始没找到解决方案(懒),直接就给全选了,后面找到解决方案才开始愉快的玩耍 解决方案 新建 run.bat,写入以下命令,每次运行时执行脚本运行即可 run.bat...脚本说明 关闭名字为“Dotnet.Api1”的 dotnet.exe 进程,新 启动一个标题为“Dotnet.Api1”的窗口运行 dotnet run 或者 dotnet watch run 退出...run.bat 的 cmd 进程 脚本执行 在 vs2017 中如果想要快速的执行脚本,可在【工具-扩展和更新】中安装扩展OpenCommandLine ?

1.1K30

VisualStudio 使用多个环境进行调试

在 VisualStudio 2017 支持使用 launchSettings.json 文件定义多个不同的环境进行调试 先给大家一张图看一下效果 ?...在调试添加 先创建一个 dotnet core 的程序,为什么需要创建这样的一个程序?因为在 dotnet core 项目创建出来就是新的 VisualStudio 2017 的项目格式。...选择项目就是启动这个项目进行调试,可以在调试的时候输入应用程序参数和设置工作文件夹。 这里的应用程序参数就是在运行控制台的时候传入的参数。...如果运行的是 WPF 程序也可以使用 Environment.CommandLine 拿到传入的参数。下面我随意添加一个字符,然后在主函数输出 ? 我在主函数输出可以看到下面代码 ?...我将工作文件夹修改为 E:\lindexi 现在尝试在主函数运行下面的代码 ?

68020

Blazor版俄罗斯方块游戏部署成功

,和这几天开发、部署遇到的一些问题解决方案记录分享下。...1.2.4. wwwroot目录为项目资源目录 使用到的Js库、Css样式、图片、声音文件等都放在这里,通过调试程序、阅读代码,知道如果要在自己的项目正常运行俄罗斯游戏需要这些文件: 应用样式(css/...Razor共享库代码组织结构,目前已有的在线工具和在线游戏组件: 组件代码在前面几篇文章都贴过,这里略过,但游戏页面的路由这里提一下:Dotnet9网站和Dotnet工具箱的网页布局是不同的,相同的是里面的内容...,所以每个工具和游戏在两个工程里都添加了对应的页面路由,比如下面的俄罗斯方块页面在两个工程中的位置: Dotnet9中的俄罗斯方块页面: Dotnet工具箱的俄罗斯方块页面: 两个页面内容几乎完全相同...原始代码如下: 问题是通过F12调试网页源码发现的,发现子组件对应的html代码并没有编译为html原生代码,还是组件代码,被直接编译为字符串了,即显示如下: 加上命令空间引用后,源码显示正常了,黑色背景也显示出来了

21930

如何给 CI CD 服务器搭建上 .NET 5 构建和运行环境

我问,为什么不写个自动化脚本来安装。...dotnet 的支持 我需要制作两个不同的 docker 一个用来做构建,一个用来作为运行时 从官方可以找到 docker file 的源代码,请看 https://github.com/dotnet.../dotnet-docker 基本只需要找对系统然后抄代码就可以了 只是因为我这边的运营商很小气,很难将文件拉下来,因此就需要在外面将 dotnet 和 PowerShell 拉下来,然后将 curl...远程下载的逻辑替换为使用本地的文件 这里我使用dotnet职业技术学院的下载库制作的下载器进行下载,这是一个在 GitHub 完全开源的仓库,请看 https://github.com/dotnet-campus...,只是因为运行时的 dotnet 很小,不需要在外面下载,因此可以更愉快的抄代码 FROM registry.lindexidoubi.com/foo/dotnet-docker-base:debian-security

97640
领券