Visual Studio 2017通过SSH调试Linux上.NET Core

发布时间 - 2026-01-11 00:10:06    点击率:

Visual Studio 2017 通过SSH 调试Linux 上.NET Core 应用程序。

本文环境

开发环境:Win10 x64 Visual Studio 2017

部署环境:Ubuntu 14.04 x64 .NET Core SDK 1.0.1

Ubuntu上安装.NET Core SDK

Ubuntu 14.04 x64

sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
sudo apt-get update

如果之前安装过预览版务必更新一下。

接着安装最新版本SDK 1.0.1

sudo apt-get install dotnet-dev-1.0.1

安装完成后执行 dotnet --info 如下:

表示SDK安装成功。

接着在Linux服务器上,需要安装SSH服务器,unzip 和 curl或wget。命令如下:

sudo apt-get install openssh-server unzip curl

安装完成后,一切准备就绪。

新建程序

打开VS 2017 新建一个控制台应用.NET Core 名为: LinuxDemo。

在Program.cs 加入如下代码:

class Program
  {
    static void Main(string[] args)
    {
      Console.WriteLine("Hello World! LineZero");
      Console.WriteLine("Linux .NET Core Debug");
      Console.WriteLine("'q' exit");
      while (true)
      {
        var result = Console.ReadLine();
        if (result.Equals("q"))
          return;
        Console.WriteLine(result);
      }
    }
  }

编写完代码,将代码上传到Ubuntu 上。

接着在Ubuntu 上运行程序,成功执行。

dotnet restore

dotnet build

dotnet run

附加调试

接着默认运行起程序,然后在VS 2017 打开 调试-> 附加到进程

选择连接类型为SSH ,然后连接和目标处 输入Ubuntu 的 IP,然后回车,会弹出对话,输入对应的用户名密码。

配置:

附加进程:

选择类型:

接着等待一下,在Linux输入几个字符,回车断下:

注意:

如果发现附加之后无法断下,停止调试,重启VS,然后退出程序,重新运行然后附加。多尝试几次即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Visual  # Studio  # 2017  # SSH  # Linux  # NET  # Core  # 通过Windows Visual Studio远程调试WSL2中的.NET Core Linux应用  # 使用VSCode开发和调试.NET Core程序的方法  # 详解Win10 Bash/WSL调试Linux环境下的.NET Core应用程序  # 详解VS2017 Linux 上.NET Core调试  # 使用源链接对ASP.NET Core源代码进行调试  # 安装完成后  # 几个  # 几次  # 弹出  # 重启  # 最新版本  # 写完  # 大家多多  # 新建一个  # 应用程序  # 器上  # 预览版 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  Laravel如何为API生成Swagger或OpenAPI文档  Laravel如何实现本地化和多语言支持?(i18n教程)  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  非常酷的网站设计制作软件,酷培ai教育官方网站?  php结合redis实现高并发下的抢购、秒杀功能的实例  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  原生JS获取元素集合的子元素宽度实例  微信小程序 wx.uploadFile无法上传解决办法  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  Laravel如何使用Livewire构建动态组件?(入门代码)  微信小程序 闭包写法详细介绍  如何快速启动建站代理加盟业务?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  如何续费美橙建站之星域名及服务?  浅谈Javascript中的Label语句  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  香港服务器租用每月最低只需15元?  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  利用vue写todolist单页应用  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  如何在新浪SAE免费搭建个人博客?  如何在阿里云购买域名并搭建网站?  Laravel如何使用withoutEvents方法临时禁用模型事件  Laravel怎么使用Intervention Image库处理图片上传和缩放  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  如何在IIS7上新建站点并设置安全权限?  Python函数文档自动校验_规范解析【教程】  简单实现jsp分页  Laravel如何处理和验证JSON类型的数据库字段  教你用AI将一段旋律扩展成一首完整的曲子  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  微信h5制作网站有哪些,免费微信H5页面制作工具?  免费网站制作appp,免费制作app哪个平台好?  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  Java类加载基本过程详细介绍  高端智能建站公司优选:品牌定制与SEO优化一站式服务  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  详解阿里云nginx服务器多站点的配置  WEB开发之注册页面验证码倒计时代码的实现  Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】  怎样使用JSON进行数据交换_它有什么限制  DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解