从零开始新建api项目

时间:2022-04-20 21:20:27

图文说明,注意流量.

开发环境

Visual Studio 2019

.net core 2.x

打开VS,建立项目

从零开始新建api项目


从零开始新建api项目


建好之后就像下面这样

从零开始新建api项目

继续再建立两个.net core类库项目分别是 ApiStudy.Core 和 ApiStudy.Infrastructure

右击解决方案,新建项目.

从零开始新建api项目

选择 .NetCore类库项目.

从零开始新建api项目

输入项目名.

从零开始新建api项目

ApiStudy.Core项目建立完成

同样的方法再建立ApiStudy.Infrastructrue 项目.

完成之后如图

从零开始新建api项目

然后设置依赖关系

从零开始新建api项目

项目结构

一个解决方案下三个项目:

Xxxx.Core
放一些核心的东西,比如 Entity(实体) 类和一些接口

Xxxx.Infrastructure
放一些数据库连接之类(DbContext)的和一些服务

Xxxx.Api
客户端项目

修改 StartUp 类代码 namespace ApiStudy.api { using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.DependencyInjection; public class Startup { public IConfiguration Configuration { get; } public StartupDevelopment(IConfiguration configuration) { Configuration = configuration; } public void ConfigureServices(IServiceCollection services) { services.AddControllers(); } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseDeveloperExceptionPage(); app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); } } }

注意, services.AddControllers(); 和 endpoints.MapControllers(); 方法成对出现, 这是.net core3.0中的最新写法

ConfigureServices方法

用来向容器中注册服务,注册好的服务可以在其他地方进行调用.

Configure方法

用来配置中间件管道,即如何响应http请求.

从零开始新建api项目

为开发环境和生产环境配置不同的 Startup

将 Startup 类修改为 StartupDevelopment

新建 StartupProduction 类

StartupProduction

namespace MyBlog { using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; public class StartupProduction { public void ConfigureServices(IServiceCollection services) { services.AddControllers(); } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseRouting(); app.UseHttpsRedirection(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); } } }

修改 Program类的代码

从零开始新建api项目


配置使用的 Startup
webBuilder.UseStartup(Assembly.GetExecutingAssembly().GetName().FullName);

netcore会根据这里配置的环境是来选择使用哪个Startup类

从零开始新建api项目

Development -> StartupDevelopment
Production -> StartupProduction

新建一个Controller

从零开始新建api项目


代码如下: namespace ApiStudy.Api.Controllers { using Microsoft.AspNetCore.Mvc; [Route("api/[controller]")] [ApiController] public class UserController:Controller { public IActionResult Get() { return Ok("Hello"); } } }

修改lauchSetting.json, 删除iis有关的部分, 如下:

{ "profiles": { "ApiStudy.api": { "commandName": "Project", "launchBrowser": true, "applicationUrl": "https://localhost:5001;:5000", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } } } } F5运行

浏览器访问 https://localhost:5001/api/user

从零开始新建api项目

Asp.NetCoreWebApi入门 - 从零开始新建api项目

标签:

原文地址:https://www.cnblogs.com/Laggage/p/11105937.html