Knowledge should be Shared in Free.

最近在研究VS code下的webapi,看了很多文档,还是微软官方的例子好,不过不太适应国人习惯,所以写点东西。

直接了当

开发环境系统信息:

os:windows 10 1909 64位;

vs code:1.45.1 system setup

net core sdk:1.1.14(x64)

net core version:3.1.201

安装与配置:

1)vs code下载安装

网址:https://code.visualstudio.com/#alt-downloads

选择:

下载后安装,一路next(想换安装路径的注意一下路径选择对话框)

2)net core下载安装

网址:https://dotnet.microsoft.com/download

选择:

一样,一路next

3)打开vs code,左侧最后一个选项,Extension,安装以下拓展

C#(必装)

C# Extensions(必装)

Visual Studio IntelliCode(必装)

csharpwebapi(选装)

Dotnet Core Essentials(选装)

ASP.NET Core Snippets(选装)

4)新建包(包就是文件夹),这里选择了DapWebApi文件夹

5)命令生成项目

首先,在vscode中添加工作区

6)文件夹上右键选择Open in Terminal

7)在vs code下部生成的命令行中输入如下命令:

dotnet new webapi,静候片刻,等其运行完毕,即可得到如4)中的项目文档结构

8)添加实体文件夹Model,并在文件夹内添加实体类,如下图所示

实体代码:

  

namespace ****.Model
{
    public class Person
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
    }
}

9)控制器添加PersonControl,用实体list集合代替数据库请求,代码如下:

using System.Collections.Generic;
using ****.Model;
using Microsoft.AspNetCore.Mvc;
namespace ****.Controllers
{
    [ApiController]
    [Route("api/person")]
    public class PersonController:ControllerBase
    {
        private List<Person> _listPerson=new List<Person>(){
            new Person(){Id=1,Name="小明",Age=12},
            new Person(){Id=2,Name="小红",Age=13},
            new Person(){Id=3,Name="小强",Age=11},
        };
        [HttpGet]
        public IActionResult Get()
        {
            return new JsonResult(_listPerson);
        }
    }
}
10)编码完成,左侧倒数第二个按钮,调试,

在弹出的网页中输入webapi网址请求:https://localhost:5001/api/person,浏览器内应该显示以下内容

如果以上步骤都正常实现了,那么赶快楼下喝酒撸个串吧

VS Code WebApi系列——1、配置的更多相关文章

  1. VS Code WebApi系列——2、jwt结合数据库校验

    Knowledge should be shared free. 我们都知道WebApi最重要的作用就是为外部服务提供相应的数据接口和服务,所以一般WebApi都会连接后台数据库,那么最重要的一件事就 ...

  2. VS Code WebApi系列——3、发布

    上两篇已经实现了WebApi及基于jwt的Token设置,那么功能做完了,该发布WebApi了.为什么要对发布进行一下说明呢,因为是基于vscode和.netcore的发布,所以可能会遇到莫名奇妙的问 ...

  3. 1.什么是Code First(EF Code First 系列)

    EF4.1中开始支持Code First .这种方式在领域设计模式中非常有用.使用Code First模式,你可以专注于领域设计,根据需要,为你一个领域的对象创建类集合,而不是首先来设计数据库,然后来 ...

  4. 【WebApi系列】浅谈HTTP

    [01]浅谈HTTP在WebApi开发中的运用 [02]聊聊WebApi体系结构 [03]详解WebApi如何传递参数 [04]详解WebApi测试和PostMan [05]浅谈WebApi Core ...

  5. 【WebApi系列】浅谈HTTP在WebApi开发中的运用

    WebApi系列文章 [01]浅谈HTTP在WebApi开发中的运用 [02]聊聊WebApi体系结构 [03]详解WebApi参数的传递 [04]详解WebApi测试和PostMan [05]浅谈W ...

  6. 9.2 翻译系列:数据注解特性之---Column【EF 6 Code First系列】

    原文链接:http://www.entityframeworktutorial.net/code-first/column-dataannotations-attribute-in-code-firs ...

  7. 1 翻译系列:什么是Code First(EF 6 Code First 系列)

    原文链接:http://www.entityframeworktutorial.net/code-first/what-is-code-first.aspx EF 6 Code-First系列文章目录 ...

  8. Code Blocks+gtest环境配置

    本文仅介绍Code::Blocks+gtest环境配置,gtest具体使用方法请参考: 玩转Google开源C++单元测试框架Google Test系列(gtest)(总) http://www.cn ...

  9. WebApi系列知识总结

    WebApi系列知识 一.webApi项目搭建 1.新建WebApi项目 (1) (2) (3) (4) Areas – HelpPage – App_Start – HelpPageConfig.c ...

随机推荐

  1. OpenStack之Neutron模块

    一:简介     一.概述 1. 传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备:而云环境下的网络已经变得非常复杂,特别是在多租户场景里,用户随时都可能需要创建.修改和删除网络 ...

  2. Yii2.0 URL美化功能Nginx与Apache配置文件

    NGinx: location / { index index.html index.htm index.php; try_files $uri $uri/ /index.php$is_args$ar ...

  3. VUE基础插值表达式

    vue 基本操作插值表达式 首先使用js导入vue.js文件 <style> [v-claok]{ display:none;//解决闪烁问题 } </style> <d ...

  4. js数组取出非重复元素

    接地气,兼容性好,支持IE8) function diff(arr1,arr2){ var a = []; var b = []; for(var i=0;i<arr2.length;i++){ ...

  5. node进程间通信

    作为一名合格的程序猿/媛,对于进程.线程还是有必要了解一点的,本文将从下面几个方向进行梳理,尽量做到知其然并知其所以然: 进程和线程的概念和关系 进程演进 进程间通信 理解底层基础,助力上层应用 进程 ...

  6. Java 14 祭出代码简化大器,Lombok 要被干掉了?

    Java 14 3 月发布距现在已经发布 2 个多月,发布了很多新特性,详细的新特性介绍可以看这篇文章: http://www.javastack.cn/article/2020/java14-has ...

  7. DQN(Deep Q-learning)入门教程(三)之蒙特卡罗法算法与Q-learning算法

    蒙特卡罗法 在介绍Q-learing算法之前,我们还是对蒙特卡罗法(MC)进行一些介绍.MC方法是一种无模型(model-free)的强化学习方法,目标是得到最优的行为价值函数\(q_*\).在前面一 ...

  8. JVM系列.JDK演进历史

    Java程序员为什么要了解虚拟机相关的知识 Java程序在设计之初就号称"一次编译,到处运行".Java之所以能做到"一次编译,处处运行"是因为Java虚拟机隐 ...

  9. Bitwarden_rs搭建

    最近LastPass网络极其不稳定,正好闲下来找到了Bitwarden_rs这个替代品,感觉不错,分享记录下部署过程. 一.Docker方式部署 #获取镜像 docker pull bitwarden ...

  10. 【Socket通信】关于Socket通信原理解析及python实现

    Socket(套接字)通信{网络通信其实就是Socket间的通信},首先了解下概念:[来源于百度百科] "两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.& ...