ASP.NET Core3.1 API 创建(Swagger配置、数据库连接Sql Server)、开发、部署

创建项目

在这里插入图片描述
在这里插入图片描述

点击Nuget安装包

在这里插入图片描述

删除原有controllers

在这里插入图片描述

编辑新建controll、添加注释

在这里插入图片描述

Startup 注册Swagger服务

  services.AddSwaggerGen(s =>
            {
                //定义由Swagger生成器创建的一个或多个文档
                s.SwaggerDoc("v1", new Microsoft.OpenApi.Models.OpenApiInfo()
                {
                    Title = "Swagger测试接口",
                    Description = "这是一个swagger测试接口",
                    Version = "v1",
                    TermsOfService = new Uri("https://test.com"), // A URL to the Terms of Service for the API. MUST be in the format of a URL.   API服务条款的URL

                    Contact = new Microsoft.OpenApi.Models.OpenApiContact()
                    {
                        Email = "shanshanyouwen@126.com",
                        Name = "shanshanyouwen"
                    },
                    License = new Microsoft.OpenApi.Models.OpenApiLicense()
                    {

                        Name = "SwaggerLicense",
                        Url = new Uri("https://test.com")
                    }
                });

                //将 Swagger 配置为使用按照上述说明生成的 XML 文件。 对于 Linux 或非 Windows 操作系统,文件名和路径区分大小写。 例如,TodoApi.XML 文件在 Windows 上有效,但在 CentOS 上无效。
                var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
                var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
                // AppContext.BaseDirectory属性用于构造 XML 文件的路径。 一些 Swagger 功能(例如,输入参数的架构,或各自属性中的 HTTP 方法和响应代码)无需使用 XML 文档文件即可起作用。 对于大多数功能(即方法摘要以及参数说明和响应代码说明),必须使用 XML 文件。
                s.IncludeXmlComments(xmlPath);
            });

使用swagger中间件

  app.UseSwagger(); //启用Swagger
                              //访问地址 http://localhost:5000/swagger/index.html
   app.UseSwaggerUI(); //启用Swagger UI页面

配置XML注释

在这里插入图片描述
在这里插入图片描述

 <GenerateDocumentationFile>true</GenerateDocumentationFile>

更改启动端口 launchsettings.json

在这里插入图片描述

在startup.cs跨域处理

在这里插入图片描述

 services.AddCors(options => {
     options.AddPolicy("CorsPolicy", builder =>
     {
         builder.SetIsOriginAllowed((x) => true)
        .AllowAnyOrigin()
        .AllowAnyHeader()
        .AllowAnyMethod();
     });
 });

在这里插入图片描述

 app.UseCors("CorsPolicy");

运行

在这里插入图片描述

数据库设计与连接

安装库

在这里插入图片描述

新建类继承框架

新建DataContext类并继承DbContext

 public class DataContext:DbContext
 {
     public DataContext(DbContextOptions<DataContext> options)
         : base(options) { } 

 }

根据数据库表设计对应设计类

对应表
在这里插入图片描述

对应类

 public class CalPointData
 {
     [Key]
     public int id { get; set; }
     public string PointTag { get; set; }
     public string PointName { get; set; }
     public string PointValue { get; set; } 
     public DateTime? uptime { get; set; } 

 }

在DataContext中初始化数据库建立属性,属性名最好与数据库表名称一致

 public class DataContext:DbContext
 {
     public DataContext(DbContextOptions<DataContext> options)
         : base(options) { }
     /// <summary>
     /// 原始数据点表
     /// </summary>
     public DbSet<CalPointData> dbCalPointData { set; get; }
     /// <summary>
     /// 吹灰器投退点表
     /// </summary>
     public DbSet<SootblowerData> dbSootblowerData { get; set; }
     /// <summary>
     /// 吹灰器投退统计
     /// </summary>
     public DbSet<BlowerCount> dbBlowerCount { get; set; }
     /// <summary>
     /// 吹灰器故障点表
     /// </summary>
     public DbSet<FaultData> dbFaultData { get; set; }
     /// <summary>
     /// 吹灰器故障统计
     /// </summary>
     public DbSet<FaultRecord> dbFaultRecord { get; set; }
     /// <summary>
     /// 机组高温点位
     /// </summary>
     public DbSet<WallData> dbWallData { get; set; }
     /// <summary>
     /// 机组高温超限统计
     /// </summary>
     public DbSet<WallRecord> dbWallRecord { get; set; }
   

 }

appsetting.json设置连接字符串

 "ConnectionStrings": {
   "DataContext": "Server=127.0.0.1;Database=WrdSisData;user=sa;password=@Yiqing7717"
 }

在这里插入图片描述

Startup.cs注册数据库

在这里插入图片描述

 services.AddDbContext<DataContext>(options =>
         options.UseSqlServer(Configuration.GetConnectionString("DataContext")));
 services.AddCors(options => {
     options.AddPolicy("CorsPolicy", builder =>
     {
         builder.SetIsOriginAllowed((x) => true)
        .AllowAnyOrigin()
        .AllowAnyHeader()
        .AllowAnyMethod();
     });
 });

部署

发布项目

左击项目——点击发布——点击发布——点击目标位置,就是发布的API所有文件
在后期部署时,可以将整个publish文件夹拷贝放在指定位置
在这里插入图片描述
在这里插入图片描述

IIS部署

打开IIS——左击网站——添加网站——选中发布的publish文件物理位置

在这里插入图片描述

点击应用池程序——找到发布API右击——基本设置——“无托管代码”——确定

在防火墙打开所指定端口

可参考 https://blog.csdn.net/qq_40685439/article/details/116585478

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Asp.net Core WebApi,Jwt,Swagger2,AutoFac,SqlSugar,AutoMapper,DotLiquid,Nlog,Redis等组件及技术实现。 C# + SQL Server 本系统包括两类用户:学生、管理员。管理员可以通过系统来添加管理员信息、修改管理员信息、添加学生信息、修改学生信息;开设课程、查询课程、录入成绩、统计成绩 管理系统是一种通过计算机技术实现的用于组织、监控和控制各种活动的软件系统。这些系统通常被设计用来提高效率、减少错误、加强安全性,同时提供数据和信息支持。以下是一些常见类型的管理系统: 学校管理系统: 用于学校或教育机构的学生信息、教职员工信息、课程管理、成绩记录、考勤管理等。学校管理系统帮助提高学校的组织效率和信息管理水平。 人力资源管理系统(HRM): 用于处理组织内的人事信息,包括员工招聘、培训记录、薪资管理、绩效评估等。HRM系统有助于企业更有效地管理人力资源,提高员工的工作效率和满意度。 库存管理系统: 用于追踪和管理商品或原材料的库存。这种系统可以帮助企业避免库存过剩或不足的问题,提高供应链的效率。 客户关系管理系统(CRM): 用于管理与客户之间的关系,包括客户信息、沟通记录、销售机会跟踪等。CRM系统有助于企业更好地理解客户需求,提高客户满意度和保留率。 医院管理系统: 用于管理医院或医疗机构的患者信息、医生排班、药品库存等。这种系统可以提高医疗服务的质量和效率。 财务管理系统: 用于记录和管理组织的财务信息,包括会计凭证、财务报表、预算管理等。财务管理系统
### 回答1: .NET Core 3.1 Web API 项目框架是一个用于构建基于RESTful风格的Web API开发框架。它是.NET Core平台的一部分,可以运行在多个操作系统上,如Windows、Linux和MacOS。以下是该框架的一些主要特点: 1. 跨平台:.NET Core 3.1 Web API可以在多个操作系统上运行,这为开发人员带来了更大的灵活性和便利性。 2. 高性能:.NET Core是一个高性能的框架,可以处理大量的并发请求。它经过优化,能够提供快速响应时间和较低的资源消耗。 3. 轻量级:相比于传统的.NET框架,.NET Core是一个更轻量级的框架。它采用了模块化体系结构,可以选择性地引用和使用需要的组件,减少了部署包的大小。 4. 开放性:.NET Core 3.1 Web API是一个开放的框架,可以与其他平台和技术进行无缝集成。它支持多种数据格式和协议,如JSON、XML、RESTful和WebSocket等。 5. 高度可扩展:通过使用中间件和自定义管道,开发人员可以方便地扩展和定制Web API的功能。它还支持依赖注入和插件机制,使得代码的组织和测试变得更加简单。 6. 安全性:.NET Core 3.1 Web API提供了强大的安全性功能,包括身份验证、授权、访问控制等。它支持常见的认证方案,如基于令牌的身份验证和OAuth。 总之,.NET Core 3.1 Web API是一个现代化、高效且可扩展的框架,适用于构建各种规模的Web API应用程序。它简化了开发过程,提供了丰富的功能和工具,帮助开发人员快速构建高质量的API。 ### 回答2: .NET Core 3.1 Web API项目框架是用于构建基于RESTful风格的Web服务的开发框架。它是在跨平台、高性能和可扩展性方面进行了优化的框架。 .NET Core 3.1是一个开源的、跨平台的框架,可以在Windows、Linux和Mac等多个操作系统上运行。这意味着我们可以使用相同的代码和工具来构建应用程序,无需为不同的操作系统创建额外的代码。 Web API是一种使用HTTP协议提供数据交互的应用程序编程接口。它通过HTTP请求(通常是GET、POST、PUT、DELETE)来处理数据,并返回JSON或XML等数据格式作为响应。Web API是一种通用的服务架构,可以与不同平台上的客户端应用程序进行通信。 在.NET Core 3.1 Web API项目框架中,我们可以使用C#来编写API控制器,通过定义不同的API端点和路由来处理不同类型的请求。我们可以使用一些常用的属性(如[HttpGet]、[HttpPost]等)来定义API端点,并使用参数绑定来获取请求中的数据。 框架还提供了丰富的中间件和插件,以处理身份验证、授权、日志记录等常见的开发需求。我们还可以通过使用依赖注入来管理应用程序中的组件和服务。 另外,.NET Core 3.1框架还提供了一些实用的工具和库,例如Entity Framework CoreSwagger等,可以简化数据库访问和API文档生成等任务。 总之,.NET Core 3.1 Web API项目框架是一个强大、灵活和高效的开发框架,可以帮助我们构建出高性能和可靠的Web服务。它具有跨平台的优势,并提供了丰富的功能和工具来简化开发流程。 ### 回答3: .NET Core 3.1是一个跨平台的开发框架,适用于构建不同类型应用的云和互联网解决方案。在.NET Core 3.1中,WebAPI项目框架也得到了重要的改进和功能增强。 首先,.NET Core 3.1的WebAPI项目框架提供了更强大的路由功能,可以使用属性路由来定义API的访问路径,从而更灵活地组织和管理API的接入点。 其次,.NET Core 3.1的WebAPI项目框架引入了端点路由的概念,可以根据不同的HTTP方法和路由规则来映射到不同的动作方法,从而实现更细粒度的控制。 此外,.NET Core 3.1的WebAPI项目框架还提供了更强大的模型绑定功能,可以将请求的数据自动绑定到动作方法的参数上,大大减少了编写冗余代码的工作量。 在数据序列化方面,.NET Core 3.1的WebAPI项目框架支持多种数据格式,包括JSON和XML,可以根据客户端的需求选择合适的数据格式进行传输。 此外,.NET Core 3.1的WebAPI项目框架还提供了强大的中间件支持,可以实现各种功能,如身份验证、授权、异常处理等,极大地提高了开发效率。 总体来说,.NET Core 3.1的WebAPI项目框架在路由、模型绑定、数据序列化和中间件方面都得到了重要的改进和增强,为开发者提供了更强大、更灵活的开发工具,使得构建高性能、可扩展的WebAPI应用变得更加简单和方便。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值