ASP.Net Core 增删改查列表实例(三)

一、.Net Core Minimai API

1、体积小,无需Api Controller

2、易编写,极简编程体验

3、简洁性,program搞定所有

创建完Web API后,打开Program.cs文件,把下面这段代码删掉,然后自己手写一个接口

以下是我们自定义接口的代码段

app.MapGet("/test", () =>
{
    return "ok";
});

后续对我们的后端列表做一些服务的时候,全部都是通过这种方式去开发我们的API,这能极大的提高我们的开发效率。

二、SqlSuger的介绍与安装

1、官网地址:

介绍:SqlSugar ORM 5.X 官网 、文档、教程 - SqlSugar 5x - .NET果糖网

教学:SqlSugar&.NET6视频教程分享(含岗位内推) - 免费视频 - .NET果糖网

在项目中的依赖项中,打开管理NuGet包,搜索SqlSugerCore下载包即可

 安装完成后创建一个User实体类,以供后续使用

三、通过SqlSugar实现Code First

1、根据数据库中的 字符串信息,动态的创建数据库

2、通过反射读取当前程序下的类,然后创建表

3、添加测试数据到数据库,来完成初始化

新建一个文件夹(Data),在下面创建一个我们所需要的辅助类(SqlSugarHelpers)

using System;
using System.Reflection;
using Api.Model;
using SqlSugar;

namespace Api.Data
{

	public class SqlSugarHelpers
	{
		public static SqlSugarScope Db = new SqlSugarScope(new ConnectionConfig()
		{
			ConnectionString = "Data Source=DESKTOP-2DUF58Q\\SQLEXPRESS;Initial Catalog=Admin_Study;Persist Security Info=True;User ID=sa;Password=123456",
			DbType = DbType.SqlServer,//数据库类型
			IsAutoCloseConnection = true //不设置成true要手动close
		},
			db =>
			{
				//(A)全剧生效配置点,一般AOP和程序启动的配置扔这里面,所有上下文生效
				//调试SQL事件,可以删掉
				db.Aop.OnLogExecuting = (sql, pars) =>
				{
					Console.WriteLine(sql);//输出sql,查看执行sql 性能无影响
				};
			});

		//初始化数据库
		public static string InitDateBase()
		{
			try
			{
				//创建数据库
				Db.DbMaintenance.CreateDatabase();
                //创建表
                string nspace = "api.Model";
                //通过反射,反射当前程序集
                Type[] ass = Assembly.LoadFrom(AppContext.BaseDirectory + "api.dll").GetTypes().Where(p => p.Namespace == nspace).ToArray();
				Db.CodeFirst.SetStringDefaultLength(200).InitTables(ass);
				//初始化数据
				//添加数据之前先清空
				Db.Deleteable<User>().ExecuteCommand();
				List<User> list = new List<User>();
				for(int i = 1;i <= 5; i++)
				{
					list.Add(new User()
					{
						Id = Guid.NewGuid().ToString(),
						Name = "Tom" + i,
						Date = DateTime.Now,
						Address = "No.189,Grove St,Los Angeles",
						Order = i
					});
				}

                for (int i = 6; i <= 10; i++)
                {
                    list.Add(new User()
                    {
                        Id = Guid.NewGuid().ToString(),
                        Name = "Tom" + i,
                        Date = DateTime.Now,
                        Address = "No.129,Grove St,Los Angeles",
                        Order = i
                    });
                }

                for (int i = 11; i <= 30; i++)
                {
                    list.Add(new User()
                    {
                        Id = Guid.NewGuid().ToString(),
                        Name = "Tom" + i,
                        Date = DateTime.Now,
                        Address = "No.87,Grove St,Los Angeles",
                        Order = i
                    });
                }
				Db.Insertable(list).ExecuteCommand();
                return "ok";
			}
			catch(Exception ex)
			{
				return ex.Message;
			}
		}
	}
}

四、相关接口的实现

写完四个方法之后,回到program.cs里面就可以做一个实现了

app.MapGet("/test", () =>
{
    return "ok";
});

app.MapGet("/codefirst", () =>
{
    return SqlSugarHelpers.InitDateBase();
});

app.MapPost("/list", (Model req) =>
{
    return SqlSugarHelpers.GetUsers(req);
});

app.MapPost("/add", (AddReq req) =>
{
    return SqlSugarHelpers.Add(req);
});

app.MapPost("/edit", (User req) =>
{
    return SqlSugarHelpers.Edit(req);
});

app.MapGet("/del", (string ids) =>
{
    return SqlSugarHelpers.Del(ids);
});
app.Run();

record WeatherForecast(DateTime Date, int TemperatureC, string? Summary)
{
    public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TMS WEB CORE特性 现代的单页面web应用程序模型。 纯粹的基于HTML5和CSS3 / Javascript的应用程序 通用UI控件的标准组件框架和浏览器特性的访问。 通过浏览器调试Pascal代码。 多年开发的一个可靠的Delphi Pascal到Javascript编译器做支撑 重用技术和组件 基于集成在Delphi IDE中组件的RAD开发。 一个真正革命性和创新的TMS FNC组件框架,现在也是web启用的,允许创建可以在VCL、FMX、LCL和web上使用的UI控件! 开放使用其他现有的Javascript框架和库。 开放使用HTML/CSS设计。 可以使用其他jQuery控件或其他Javascript框架。 在jQWidgets库中为jQuery控件提供Pascal类包装器。 简单的接口,以REST云服务,包括TMS XData数据库。 容易部署 应用程序由HTML和Javascript文件组成,可以轻松地部署在任何轻或重量级的web服务器上。 使用任何现有的负载平衡软件和/或技术以达到最高的性能 快速RAD开发中包含了小而方便的调试webserver ========== FAQ 支持哪些浏览器? Chrome Firefox Safari edge ide支持哪一个? TMS WEB Core可以在Delphi XE7中安装到Delphi东京10.2.x。它可以与专业的,企业和建筑师的sku一起使用。 我需要什么web服务器? TMS WEB核心并没有对WEB服务器提出任何特定的要求。创建的应用程序由HTML、CSS和Javascript文件组成,这些文件可以由任何现有的轻或重的web服务器处理。它可以与IIS、Apache、节点一起使用。js、Litespeed Nginx,…… 我可以将自己的Javascript库/CSS与自动生成的代码混合在一起吗? 是的,现有的Javascript库和框架可以使用。对于jQuery和jQuery UI控件,有现成的支持。CSS可以用于样式页。 我是否可以在TMS WEB项目中创建一个默认的HTML模板? 是的,除了使用Delphi IDE表单设计器来设计web页面的WYSIWYG设计,您还可以使用HTML模板文件和使用CSS创建页面。您可以轻松地将HTML页面中的UI HTML元素链接到Delphi IDE表单设计器上,并使用IDE来创建UI控制逻辑和UI控件到服务器逻辑。 哪些语言是用于开发的? 使用Pascal语言。所有客户端代码都是用Pascal语言完全开发的。所有的UI控件都是在Pascal代码中提供的。对现有Javascript代码的接口是无缝的。 我真的需要用DELPHI IDE 开发TMS WEB内核吗? 这个IDE不是严格需要的。可以从命令行调用编译器来编译项目。 我需要TMS XData连接到数据库吗? 不,TMS WEB核心支持与其他微服务的连接。也可以使用node。js,ASP.NET core,Embarcadero RAD server 或其他微服务技术。TMS XData提供了使用Pascal语言开发微服务的优势。 许可模型? TMS WEB Core提供了一个简单的、没有废话的许可证模型。许可证是每个开发人员的。没有运行许可证。除了完整的工作软件之外,拥有许可证的开发人员还可以获得一年的免费支持和免费更新。 我可以创建自定义UI控件吗? 是的,您可以创建自己的TMS WEB核心UI控件。包含产品的所有UI控件的全部源代码都包含在其中,可以作为如何开发自定义TMS WEB核心UI控件的指南。 我想从TMS WEB Core开始。在哪里可以得到它? 目前,TMS WEB核心技术预览版免费提供给所有活跃的TMS all access客户。一旦我们有了试用版,它将提供给所有感兴趣的用户。当有完整的发行版,它也将被单独出售给任何感兴趣的用户。 用户需要浏览器插件或其他特殊的东西吗? 不!所需要的只是一个兼容HTML5标准的web浏览器。TMS WEB核心应用程序运行在任何现代桌面浏览器或移动设备浏览器上。 TMS WEB核心是否提供响应性设计? 是的。在TMS WEB核心应用程序中,可以很容易地使用HTML/CSS或与流行框架(如bootstrap)结合使用的完整响应设计技术。您可以创建一个响应式页面布局,并将从Delphi IDE中创建的应用程序逻辑连接到这个响应页面。 我可以调试我的代码吗? 是的。有了必要的编译器魔法,您就可以从浏览器Chrome和FireFox中全面调试您的应用程序了。您可以通过您的Pascal代码、设置表、Pascal代码中的断点等等……

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值