dotnet vs code mysql_使用VS Code开发asp.net core (下)

本文是基于Windows10的.

Debugging javascript

打开wwwroot/js/site.js, 写一段简单的js代码:

(function($) {

$(document).ready(function() {

$('#myButton').on('click', function() {

alert('Hello world!');

});

});

})(jQuery);

5f419eec2078785011f175208c7863f9.png

可以设置断点, 但是由于整个项目是用于服务器端的. 而js文件是用于客户端开发的, 我们需要一种方法来调试js文件.

这里我们就需要安装一个扩展: Chrome Debugger.

c5cf50b2c8e45a99e561f9c098b03721.png

然后打开launch.json, 可以直接打开文件, 也可以如下图方式打开:

1389670d60ce7f82a0e80b34cb87e3cc.png

点击右下角的Add Configuration:

b7aa765c0ca97f855dd8226580796d9a.png

修改配置的端口和目录:

"configurations": [

{"type": "chrome","request": "launch","name": "Launch Chrome","url": "http://localhost:5000","webRoot": "${workspaceFolder}/wwwroot"},

在About.cshtml里面添加一个button:

My Button

在Debugger中运行Launch Chome:

64dbbb22d22e23cc362447f5a928533a.png

运行后, 弹出浏览器, 但是页面无法显示:

006441a1933a73e618611a1029020563.png

这是因为Chrome Debugger仅仅运行客户端的代码. 而服务器段的代码买有运行.

所以还需要在另外的命令行执行dotnet run命令.

然后再次运行Chrome Launch. 这次运行成功了

点击About页面的My Button, 断点并没有响应. 切换到代码页面:

e8ee4b682c19d01cf36d3940ea5707a0.png

可以看到断点被灰掉了, 这是因为debugger并未找到这段代码.

这是因为dotnet run运行的是Production环境:

775d19f8d5fe3836d21de5274c27ae5f.png

而看下代码_Layout.cshtml:

31c4126646cbc0737fa320aca216bc9e.png

程序只有在Development环境下才会包含site.js.

这时可以打开bundleconfig.json, 把sourceMap属性设置成true. 并且安装这个包:

dotnet add package BuildBundlerMinifier

执行dotnet clean 和 dotnet build

这是一种办法, 但是我更想直接调试site.js, 所以可以在命令行设置一下临时的环境变量:

set ASPNETCORE_ENVIRONMENT=Development

然后执行dotnet run.

这时刷新后再点击按钮, 就可以触发断点了:

f882ca3df258239f2b6b0f0ead99647d.png

除此之外还可以使用浏览器自带的debugger.

Debug Typescript

在wwwroot/js里面添加test.ts:

class Test {

constructor(private msg: string) {

}

show() {

alert(this.msg);

}

}

然后需要为项目配置一下Typescript:

建立一个tsconfig.json文件:

{

"compileOnSave": true,

"compilerOptions": {

"target": "es5",

"sourceMap": true,

"module": "commonjs"

},

"include": [

"wwwroot/js/*.ts"

]

}

这时候, ts文件还不能编译, 因为typescript还没有被安装. 也就是说tsc命令还不能用.

所以需要安装typescript:

npm install typescript -g

这时在项目目录执行tsc命令就可以生成js文件了:

22db8356ad49f47bf91ae175e1abd0d7.png

但是, 如果更改了test.ts文件, 保存后. 并没有生成新的js文件. 这是因为在保存的时候vscode不知道应该做什么.

可以在项目build之前进行tsc这个命令, 所以修改csproj文件, 添加如下代码:

然后执行dotnet build, 就可以看到生成了新的test.js文件.

操作数据库

针对sqlite, 没有太好的办法, 到官方网站下载工具, 使用命令行sqlite3.

针对sqlserver, 需要安装一个mssql扩展:

dedec5a58926ba4c6cef9b4057767311.png

我本机有一个localdb实例的数据库.

在项目建立一个test.sql文件, 打开文件后会自动安装sql tools service:

0d3f26c0188c4259770e74fb6f6edf14.png

选择连接字符串, MSSQL Connect:

6476aeb24ec608041938899947a86c2e.png

因为现在还没有建立任何连接字符串, 所以这时它会让你建立一个:

首先输入Server Name:

9893e30ff000f619867ffbe8a42bdb7f.png

然后输入数据库名:

e2b0cc68358fcdb01c2fbadfd96ab3cd.png

选择登陆方式, 我选择integrated:

540843984ab7ba18038a373f80c1c840.png

最后输入这个档案的名字: SalesDB

85cd80f404713f6ea8a221d9af3ea86b.png

确定后, VSCode就会开始尝试连接该数据库, 成功后会有提示:

221acbddca0792b4682ecb8e523d90a3.png

vscode右下角状态栏也会有显示:

97f3b66cbe3205cedafc30e27931ee0c.png

这时再写sql语句就会有智能提示:

773de0ba18f3bf99dc8d310c6c41a03d.png

然后执行这个sql语句: 可以先看看有哪些命令:

f09f63a5f975e17897d80c7b30a01ace.png

Ctrl+Shift+E是执行sql语句的命令. 执行后的结果如图:

980e30d10dfab63e3733ae6fc17b08f3.png

上面所配置的Sql连接字符串实际上是保存在了UserSettings里面:

91019e2c488a717bfd0b1274e36528fd.png

对于mysql和postgresql等, 需要安装vscode-database这个扩展. 这里就先不介绍了.

关于扩展

创建新文件: Advanced New File 扩展

搜索并安装advanced new file扩展, 这两个哪个都行. 我安装的是带横线的那个:

f65690f62456c9c04e9e7c19ed87f6fe.png

通过Command Palette可以看到创建新文件的快捷键是Ctrl+Alt+N.

198239d57f51630688e718d96cd2543b.png

然后选择相对的路径:

6285abc171fb71b1eb89a2df3a056669.png

选择后输入文件名即可, 这时可以带着目录结构:

4fc55977d2c606582968fc8f910cdf81.png

如果目录结构中的目录不存在, 那么它也会自动被创建. 点击Enter就会创建新文件个所需的目录.

ESLint扩展

首先安装ESLint:

4610dd06c2f90cc10c3c8ee544b1e61a.png

如果你没有安装eslint库的话还需要通过npm来进行全局安装:

npm install -g eslint

然后需要添加一个eslint的配置文件, 选择Create .eslintrc.json文件:

bedce1efaea2655d7d451980ca8b717f.png

生成的文件如下:

04e6dabb1431a010a18af8946e13aed2.png

这时就可以看到eslint扩展起作用了:

b0c0e8661069f2fef2548177ff7be312.png

具体ESLint的内容, 请查看官方文档.

TSLint扩展

安装tslint扩展:

c5d05ca516a46b7a4f010982c5762228.png

通过npm安装tslint:

npm install -g tslint

然后看一下tslint有哪些命令:

321195e1861cc804d6a6291d37cc4a8c.png

选择创建tslint.json文件:

5c161e37bb651f66993c6e9f9a600899.png

找一个ts文件试一下:

ee4d4b03cff39c24f58a453f8c7635fd.png

tslint也起作用了.

Bower扩展

安装Bower扩展

87e1cfc71d80f3035e4a20d7c8707929.png

安装好后, 在Command Palette中输入并选择Bower命令会出下如下选项:

a7dedb447c86e2516680e3bc9001ea32.png

如果你使用bower, 那么这里的命令你应该比较熟悉.

这里比较有用的一个命令是Bower Search and Install. 选择后, 搜索一个包例如 underscore:

ae1ba83e620b4aa9e22e6a9dd74b688d.png

然后选择Install as Dependency:

54d696645e0c46a0f15a743034e4ad96.png

安装后, 该包会出现在bower.json文件中.

XML格式化扩展

vscode在不安装扩展的情况下xml文件是无法被自动格式化的.

可以安装扩展Xml Tools:

4c81248b702b53c2a6c96aa22bc19c73.png

安装后, 查看它都有哪些命令:

4e4833ad9710916ff5be1e5ae1c3922e.png

这时, 如果想格式化xml文件, 直接使用vscode默认的格式化文件命令(Shift+Alt+F)即可, 它会按照项目的配置进行格式化.

其他类型的文件如果需要格式化, 可以在扩展市场搜索安装, 自行研究一下即可.

Rest Client扩展

安装Rest Client扩展:

ad764f6dfa36fcd4b0a5a8e466353e4d.png

然后创建一个文件, 例如叫 httptest, 之后选择该文件的language mode:

c8d1d0476fed071990dffa6cbf7a45fa.png

然后选择Http:

c003d920f8883070cb89159e01aa5b94.png

然后在文件中写一个http的地址:

234b9dba643b670614fc8d4f72dea496.png

写完http地址后, 在地址的上方会出现一个链接: Send Request, 点击这个链接, 就会发送请求, 请求响应后, 在右侧可以看到返回的结果:

febba55226cef1779b613c7ceef89960.png

在这里还可以添加请求的各种参数:

cfd33a1144974a35fc23b31abde60297.png

请求的结果可以保存到文件:

617936e772a683f98cc3ba85917578c0.png

同样这里可以发送 POST, PUT, DELETE等请求.

VSCode的扩展太多了, 可以选择Poppular Extensions或者Recommend Extensions去安装并研究一下.

这个文章就写这些了, 谢谢下面是我的关于ASP.NET Core Web API相关技术的公众号--草根专栏:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值