ASP.Net Core Web API快速搭建后台服务搭载SQLServer+FreeSQL(一)

目录

一.建立WebAPI所需要的环境

1. IDE编辑器:VisualStudio2019+

 2.数据库安装:SqlServer

 3.下载SQL Server Management Studio (SSMS)

二.创建ASP.Net Core Web API工程

1.创建模板工程

2. 试运行案例接口

3.安装FreeSQL工具包 

 三.设计数据库 启动SQL Server Management Studio (SSMS)

 1.初次以Window身份登陆

 2.创建新的登陆名

 3.SQlServer身份登陆

 4.创建数据库

四.功能开发

1.初始化数据库连接

2.编写数据模型的类

3.编辑数据处理的Web接口

4.运行进行测试

 五.发布文件夹

1.双击Services打开发布界面​编辑

 2.添加发布配置文件


很多时候我们需要快速的建立一个小型的Web后台,对前端数据进行维护,用ASP.Net Core Web API能完美的满足我们轻后端的项目需求。

一.建立WebAPI所需要的环境

1. IDE编辑器:VisualStudio2019+

下载地址:  https://learn.microsoft.com/zh-cn/visualstudio/releases/2022/release-notes

 2.数据库安装:SqlServer

下载地址:https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads

 下载后傻瓜式安装

 3.下载SQL Server Management Studio (SSMS)

下载地址:https://learn.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16

二.创建ASP.Net Core Web API工程

1.创建模板工程

 

2. 试运行案例接口

工程创建之后能看到模板里面已经给到一个WeatherForecast的案例,这时候我们直接运行就能通过Swagger测试当前这个案例接口。

3.安装FreeSQL工具包 

 三.设计数据库 启动SQL Server Management Studio (SSMS)

 1.初次以Window身份登陆

 2.创建新的登陆名

因为我们后续肯定是通过代码输入数据库的账号密码才能正常访问,不然就不能远程访问只能本地访问,所以我们需要创建一个或者多个登陆用户

 3.SQlServer身份登陆

退出当前Window身份登陆后,使用刚才添加的Serve账号密码登陆。服务器名称用(local)或者.或者本机ip;身份验证选择SQLServer

 4.创建数据库

登陆成功后,右键数据库创建自己的数据库,然后在右键表创建新表,具体表设计规则根据自己项目的业务自定义设定。

四.功能开发

1.初始化数据库连接

public class FreesqlManager
{//替换对应的数据库名字和账号密码static string connectionStr = "server=127.0.0.1;database=MyWebAPI;uid=aaa;pwd=123";private static Lazy<IFreeSql> freeSQL = new Lazy<IFreeSql>(() => new FreeSql.FreeSqlBuilder().UseConnectionString(FreeSql.DataType.SqlServer, connectionStr).UseAutoSyncStructure(true).Build());public static IFreeSql HsjFreeSQL => freeSQL.Value;
}

2.编写数据模型的类

 public class Student{private int id;private string name;private int age;public Student(string name, int age){this.name = name;this.age = age;}public string Name { get => name; set => name = value; }public int Age { get => age; set => age = value; }[Column(IsIdentity = true, IsPrimary = true)]public int Id { get => id; set => id = value; }}

3.编辑数据处理的Web接口

namespace MyWebAPI.Controllers
{[ApiController][Route("[controller]/[action]")]public class StudentController : ControllerBase{[HttpPost]public void Insert(Student stu){long id = FreesqlManager.HsjFreeSQL.Insert(stu).ExecuteAffrows();}[HttpPost]public void Delect(int s_id){//DELETE FROM `Student` WHERE (`Id` = 1 OR `Id` = 2)//var t2 = FreesqlManager.HsjFreeSQL.Delete<Student>(new { id = s_id }).ExecuteAffrows();var t5 = FreesqlManager.HsjFreeSQL.Delete<Student>().Where(a => a.Id == s_id).ExecuteAffrows();}[HttpPost]public void Update(int age){//FreesqlManager.HsjFreeSQL.Update<Student>(1).Set(a => a.Age, age).ExecuteAffrows();FreesqlManager.HsjFreeSQL.Update<Student>().Set(a => a.Age, age).Where(a => a.Id == 1).ExecuteAffrows();//WHERE (`Id` = 1)}[HttpGet]public IEnumerable<Student> Check(int upperAge){List<Student> stus = FreesqlManager.HsjFreeSQL.Select<Student>().Where(a => a.Age > upperAge).ToList();foreach (var item in stus){Console.WriteLine(item.Name);}return stus .ToArray();}}
}

4.运行进行测试

     

 五.发布文件夹

1.双击Services打开发布界面

 2.添加发布配置文件

选择发布文件夹,然后选择发布的路径,最后点击发布即可

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/9370.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】不允许你不了解联结表

&#x1f3ac; 博客主页&#xff1a;博主链接 &#x1f3a5; 本文由 M malloc 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f384; 学习专栏推荐&#xff1a;LeetCode刷题集&#xff01; &#x1f3c5; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指…

“生鲜蔬”APP的设计与实现

1.引言 在这个科技与网络齐头并进的时代&#xff0c;外卖服务正在飞速发展&#xff0c;人们对外卖APP系统功能需求越来越多&#xff0c;开发APP的人员对自己的要求也要越来越高&#xff0c;要从所做APP外卖系统所实现的功能和用户的需求来对系统进行设计&#xff0c;还需要与当…

python3开发-Word助手

目录 背景 思路 步骤 代码示例 总结 背景 在日常工作和学习中&#xff0c;我们经常需要处理Word文档&#xff0c;例如编辑、提取内容、生成报告等。而Python是一门功能强大的编程语言&#xff0c;它提供了丰富的库和工具&#xff0c;使得我们可以利用Python来处理Word文档…

Git无法上传删除 Commit里面有大文件

1.Bug描述 因为在一次提交中不小心把一个打包的aab文件弄到commit文件里了&#xff0c;于是在上传的时候push rejected 了。 因为GitHub的文件上限是100M&#xff0c;但是打的包太大了&#xff0c;有170M&#xff0c;所以是不能上传的&#xff0c;但是又是已经在Commit历史中了…

从Word Embedding到Bert模型—自然语言处理中的预训练技术发展史

Bert最近很火,应该是最近最火爆的AI进展,网上的评价很高,那么Bert值得这么高的评价吗?我个人判断是值得。那为什么会有这么高的评价呢?是因为它有重大的理论或者模型创新吗?其实并没有,从模型创新角度看一般,创新不算大。但是架不住效果太好了,基本刷新了很多NLP的任务…

Postman中读取外部文件

目录 前言&#xff1a; 一、postman中读取外部文件的格式 二、Postman中如何导入文件 三、在Postman读取导入的数据文件 前言&#xff1a; 在Postman中&#xff0c;您可以使用"数据文件"功能来读取外部文件&#xff0c;如CSV、JSON或Excel文件。这使得在测试中使用…

深度学习编译器汇总

深度学习的发展对个科学领域产生了深远的影响。它不仅在自然语言处理&#xff08;NLP&#xff09;和计算机视觉&#xff08;CV&#xff09;等人工智能领域显示出显著的价值&#xff0c;而且在电子商务、智慧城市和药物发现等更广泛的应用领域也取得了巨大的成功。随着卷积神经网…

ch0_汇编介绍

学习参考: https://helijian.blog.csdn.net/article/details/60885095 参考贺利坚老师的汇编课程 1. 汇编作用 1.1 汇编是所有语言的老祖宗 1.2 不可替代的使用场景 汇编语言仍在发挥不可替代的作用: 效率 . 运行效率&#xff1a;开发软件的核心部件&#xff0c;快速执行和实…

【MySQL高级篇笔记-数据库的设计规范(中) 】

此笔记为尚硅谷MySQL高级篇部分内容 目录 一、为什么要数据库设计 二、范式 1、范式简介 2、范式都包括哪些 3、键和相关属性的概念 4、第一范式(1st NF) 5、第二范式(2nd NF) 6、第三范式(3rd NF) 7、小结 三、反范式化 1、概述 2、 应用举例 3、反范式的新问…

split()分割字符串【JavaScript】

分割字符串 在JavaScript中&#xff0c;我们可以使用split&#xff08; &#xff09;方法把一个字符串分割成一个数组&#xff0c; 这个数组存放的是原来字符串的所有字符片段。 有多少个片段&#xff0c;数组元素个数就是多少。 语法 字符串名.split&#xff08;"分割…

【Vue3】学习笔记-shallowReactive与ShallowRef

shallowReactive&#xff1a;只处理对象最外层属性的响应式&#xff08;浅响应式&#xff09;。 shallowRef&#xff1a;只处理基本数据类型的响应式, 不进行对象的响应式处理。 什么时候使用? 如果有一个对象数据&#xff0c;结构比较深, 但变化时只是外层属性变化 > sh…

Spring Cache

Spring Cache 一.Spring Cache介绍 Spring Cache是一个框架,实现了基于注解的缓存功能,只需要加一个注解,就能实现缓存功能 Spring Cache整合了很多的缓存产品,提供一层抽象(接口),底层可以切换不同的缓存 具体是通过CacheManager接口来统一不同的缓存技术 二.Spring Cache…