title author date CreateTime categories
VisualStudio 使用多个环境进行调试
lindexi
2019-11-29 08:58:49 +0800
2018-8-28 19:2:23 +0800
VisualStudio 调试

在 VisualStudio 2017 支持使用 launchSettings.json 文件定义多个不同的环境进行调试

先给大家一张图看一下效果

可以看到原来的是启动的按钮,现在被我修改为 lindexi 和 逗比,那么我是如何做到的?这个有什么用呢?

实际上这个是通过 launchSettings.json 设置的,可以在 VisualStudio 里设置也可以在文件直接修改。

在调试添加

先创建一个 dotnet core 的程序,为什么需要创建这样的一个程序?因为在 dotnet core 项目创建出来就是新的 VisualStudio 2017 的项目格式。

如果创建的是WPF 程序就需要 从以前的项目格式迁移到 VS2017 新项目格式

创建完成请右击项目属性,可以看到下面界面

点击调试可以看到配置文件,默认的配置文件就是和项目相同,这时只需要点击新建按钮然后输入新的名字,就可以创建新的配置

在不同的配置可以选择使用启动的是什么,如项目。选择项目就是启动这个项目进行调试,可以在调试的时候输入应用程序参数和设置工作文件夹。

这里的应用程序参数就是在运行控制台的时候传入的参数。如果运行的是 WPF 程序也可以使用 Environment.CommandLine 拿到传入的参数。下面我随意添加一个字符,然后在主函数输出

我在主函数输出可以看到下面代码

那么工作文件夹又是做什么的呢?

我将工作文件夹修改为 E:\lindexi 现在尝试在主函数运行下面的代码

在主函数添加下面代码然后运行

            var file = new FileInfo("欢迎访问我博客 lindexi.github.io.txt");

            Console.WriteLine(file.FullName);

可以看到路径相对的文件夹就修改了,所以设置工作文件夹会修改软件的找 dll 和文件的文件夹。

需要注意,添加的工作文件夹需要是存在的,不然会出现下面提示

启动除了使用项目还可以使用外面的程序,可以选择启动可执行文件,然后写入可执行文件的路径

这时的 VisualStudio 执行的就是这个传入的软件,这个就和使用调试附加到进程一样。

这个问题是在堆栈网的以为大神问的,他问启动的几个选项有什么不同,于是我就这样回答

The first is IIS Express that will use IIS Express to host this project and the second is Project that will run this project and debugging it.

If your project include Main that you can select Project to Launch and VisualStudio will debugging it.

The last one is Executable that will use the other application to run this project like dotnet run xx.dll and you should set the running application path when you select Executable and set some arguments. The VisualStudio will debugging the running application like use attached process.

See:Working with Environments and Launch Settings in ASP.NET Core

Use multiple environments in ASP.NET Core

链接:https://stackoverflow.com/q/48221913/6116637

修改文件

如果不想使用 VisualStudio 可以直接打开 Properties\launchSettings.json 如果这个文件还不存在可以自己创建。

文件的格式是

{
"profiles":
{
"配置文件1":
{
"commandName": "Project",
"commandLineArgs": " 欢迎访问我博客 lindexi.github.io 如果发现有任何不懂欢迎发邮件 ",
"workingDirectory": "E:\\lindexi"
},
"配置文件2":
{
"commandName": "Executable",
"executablePath": "D:\\程序\\baozitongregex.exe",
"commandLineArgs": "欢迎访问我博客 lindexi.oschina.io 如果发现有任何不懂欢迎发邮件"
}
}
}

必须指定配置文件的 commandName ,其他的如 commandLineArgs 这些都是可以不写的

可以添加的值是

  • executablePath 只有 commandName 设置为 Executable 时才可以使用,用于设置启动的软件

  • commandLineArgs 传入的命令行

  • workingDirectory 工作文件夹

  • environmentVariables 环境变量

环境变量的格式是

      "environmentVariables":
{
"环境变量1": "值"
}

参见:Use multiple environments in ASP.NET Core

Working with Environments and Launch Settings in ASP.NET Core

2019-11-29-VisualStudio-使用多个环境进行调试的更多相关文章

  1. VisualStudio 使用多个环境进行调试

    在 VisualStudio 2017 支持使用 launchSettings.json 文件定义多个不同的环境进行调试 先给大家一张图看一下效果 可以看到原来的是启动的按钮,现在被我修改为 lind ...

  2. pycharm+anaconda在Mac上的配置方法 2019.11.29

    内心os: 听人说,写blog是加分项,那他就不是浪费时间的事儿了呗 毕竟自己菜还是留下来东西来自己欣赏吧 Mac小电脑上进行python数据开发环境的配置 首先下载Anaconda,一个超好用的数据 ...

  3. 2019.11.29 Mysql的数据操作

    为名为name的表增加数据(插入所有字段) insert into name values(1,‘张三’,‘男’,20); 为名为name的表增加数据(插入部分字段) insert into name ...

  4. 2019.11.29 SAP SMTP郵件服務器配置 發送端 QQ郵箱

    今天群裏的小夥伴問了如何配置郵件的問題,隨自己在sap裏面配置了一個 1.    RZ10配置參數 a)       参数配置前,先导入激活版本 执行完毕后返回 b)      输入参数文件DEFAU ...

  5. Supervision meeting notes 2019/11/29

    topic 分支:  1. subgraph/subsequence mining Wang Jin, routine behavior/ motif. Philippe Fournier Viger ...

  6. EOJ Monthly 2019.11 E. 数学题(莫比乌斯反演+杜教筛+拉格朗日插值)

    传送门 题意: 统计\(k\)元组个数\((a_1,a_2,\cdots,a_n),1\leq a_i\leq n\)使得\(gcd(a_1,a_2,\cdots,a_k,n)=1\). 定义\(f( ...

  7. 2018-9-30-VisualStudio-使用多个环境进行调试

    title author date CreateTime categories VisualStudio 使用多个环境进行调试 lindexi 2018-09-30 18:39:26 +0800 20 ...

  8. 黑盒测试实践--Day5 11.29

    黑盒测试实践--Day5 11.29 今天完成任务情况: 分析系统需求,完成场景用例设计 小组负责测试的同学学习安装自动测试工具--QTP,并在线学习操作 小黄 今天的任务是完成场景测试用例的设计.在 ...

  9. 11 个使用 GNOME 3 桌面环境的理由

    11 个使用 GNOME 3 桌面环境的理由 作者: David Both 译者: LCTT geekpi | 2017-08-22 11:43   评论: 27 GNOME 3 桌面的设计目的是简单 ...

随机推荐

  1. eclipse安装错误的解决办法

    eclipse安装错误的解决办法 Eclipse 是一个集成开发环境,如Java,C,C++,PHP等安装Eclipse首先得先安装java的Jdk或者Jre 首先访问https://www.ecli ...

  2. 搭建前端性能showslow平台

    ShowSlow是一个可以帮助监测各种网站性能指标趋势变化的开源工具.通过收集YSlow,Page Speed,WebPageTest和dynaTrace AJAX排名的数据形成图表以帮助了解网站的变 ...

  3. C++二维数组名的再探索

    #include <iostream> int main() { ][] = { , , , , , , , , , , , }; //输出 0,1,2,3,4,5,6,7,8,9,10, ...

  4. 使用同步上下文进行C#与VBA代码和Excel之间的交互

    原始出处:www.cnblogs.com/Charltsing/p/RunVBA.html 大家都知道,Excel是个STA,不允许在Excel忙的时候对其Com对象进行操作,也不允许同时有多个线程对 ...

  5. 浏览器端-W3School-HTML:HTML DOM Style 对象

    ylbtech-浏览器端-W3School-HTML:HTML DOM Style 对象 1.返回顶部 1. HTML DOM Style 对象 Style 对象 Style 对象代表一个单独的样式声 ...

  6. 浏览器端-W3School-浏览器端:JavaScript Array 对象

    ylbtech-浏览器端-W3School-浏览器端:JavaScript Array 对象 1.返回顶部 1. Array 对象 Array 对象用于在单个的变量中存储多个值. 创建 Array 对 ...

  7. save——model模块保存和载入使用简单例子

    https://www.w3xue.com/exp/article/201812/10995.html =====1====实践模型存入 import tensorflow as tf from te ...

  8. 【flask】使用类组织配置-使用工厂函数创建程序实例

    [需求] 使用配置类管理flask管理测试环境, 通过1个参数即可控制Flask是运行develpment环境还是production环境(数据库配置,邮件配置也要根据环境的变化而变化) [思路] 1 ...

  9. 使用zipkin2在SpringCloud2.0环境下追踪服务调用情况

    1.目的: 使用zipkin2.0在Spring Cloud 2.0环境下,追踪服务调用情况. 2.所需组件: zipkin2.0,Spring Cloud 2.0,Eureka Server,Eur ...

  10. MutablePropertyValues的简单用法

    代码例子: package com.cy.model; import lombok.Getter; import lombok.Setter; import lombok.ToString; @Get ...