2019-11-29-VisualStudio-使用多个环境进行调试
| 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-使用多个环境进行调试的更多相关文章
- VisualStudio 使用多个环境进行调试
在 VisualStudio 2017 支持使用 launchSettings.json 文件定义多个不同的环境进行调试 先给大家一张图看一下效果 可以看到原来的是启动的按钮,现在被我修改为 lind ...
- pycharm+anaconda在Mac上的配置方法 2019.11.29
内心os: 听人说,写blog是加分项,那他就不是浪费时间的事儿了呗 毕竟自己菜还是留下来东西来自己欣赏吧 Mac小电脑上进行python数据开发环境的配置 首先下载Anaconda,一个超好用的数据 ...
- 2019.11.29 Mysql的数据操作
为名为name的表增加数据(插入所有字段) insert into name values(1,‘张三’,‘男’,20); 为名为name的表增加数据(插入部分字段) insert into name ...
- 2019.11.29 SAP SMTP郵件服務器配置 發送端 QQ郵箱
今天群裏的小夥伴問了如何配置郵件的問題,隨自己在sap裏面配置了一個 1. RZ10配置參數 a) 参数配置前,先导入激活版本 执行完毕后返回 b) 输入参数文件DEFAU ...
- Supervision meeting notes 2019/11/29
topic 分支: 1. subgraph/subsequence mining Wang Jin, routine behavior/ motif. Philippe Fournier Viger ...
- 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( ...
- 2018-9-30-VisualStudio-使用多个环境进行调试
title author date CreateTime categories VisualStudio 使用多个环境进行调试 lindexi 2018-09-30 18:39:26 +0800 20 ...
- 黑盒测试实践--Day5 11.29
黑盒测试实践--Day5 11.29 今天完成任务情况: 分析系统需求,完成场景用例设计 小组负责测试的同学学习安装自动测试工具--QTP,并在线学习操作 小黄 今天的任务是完成场景测试用例的设计.在 ...
- 11 个使用 GNOME 3 桌面环境的理由
11 个使用 GNOME 3 桌面环境的理由 作者: David Both 译者: LCTT geekpi | 2017-08-22 11:43 评论: 27 GNOME 3 桌面的设计目的是简单 ...
随机推荐
- js中var的重复声明
腾讯的一个笔试题,先看一下 var a = 100;function fn() { alert(a); //undefined var a = 200; alert(a); //200}fn();al ...
- leetcode 1两数之和
使用哈希的方法:先将nums哈希表化,再遍历nums,寻找-nums[i]如果存在则为题目所求 class Solution { public: vector<int> twoSum(ve ...
- Python之输入输出
python中变量的输出 # 打印提示 print('hello world') print('你好!') # 输出变量 url = 'loaderman' print('我是:',url) prin ...
- 阶段3 2.Spring_01.Spring框架简介_05.spring的优势
- 非GUI运行Jmeter,jtl文件没有响应数据的解决办法
一.问题 Jmeter官方一直强调要在非GUI模式下运行Jmeter:Run your JMeter test in command-line non-GUI mode. 但在非GUI模式下运行生成的 ...
- PPT鼠绘必须掌握的PPT绘图三大核心功能
在PPT制作教程栏目中,陆陆续续的分享了一系列通过合并形状功能来绘图的教程,绘制安卓机器人.绘制西瓜.绘制鸡蛋.其实,合并形状功能只是PPT绘图的一部分,而真正想要掌握PPT鼠绘,仅仅是会使用合并形状 ...
- C#打开文件
C#中经常用到的功能,打开文件: /// <summary> /// 打开文件,可选择多个文件 /// </summary> /// <param name=" ...
- 【神经网络与深度学习】【CUDA开发】caffe-windows win32下的编译尝试
[神经网络与深度学习][CUDA开发]caffe-windows win32下的编译尝试 标签:[神经网络与深度学习] [CUDA开发] 主要是在开发Qt的应用程序时,需要的是有一个使用的库文件也只是 ...
- jqueryweui关于switch css与js结合
.invoice_wrapper{ .comm_con{ .weui-switch-cp{ .weui-switch-cp__box{ height:0.4rem; margin:0.25rem 0; ...
- 线程间的协作(wait/notify/sleep/yield/join)(五)
一.线程的状态 Java中线程中状态可分为五种:New(新建状态),Runnable(就绪状态),Running(运行状态),Blocked(阻塞状态),Dead(死亡状态). New:新建状态,当线 ...