ASP.NET Core 项目实战(运行项目创建表)
2022-11-24 本文已影响0人
彬_哥哥
image.png创建工具类控制器
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using System.Reflection;
namespace WebApi.Controllers
{
/// <summary>
/// 工具
/// </summary>
[Route("api/[controller]/[action]")]
[ApiController]
public class ToolController : ControllerBase
{
public ISqlSugarClient _db;
//注入 =》Program.cs =>builder.Register()=>HostBuilderExtend.cs
public ToolController(ISqlSugarClient db)
{
_db = db;
}
/// <summary>
/// 创建数据库
/// </summary>
/// <returns></returns>
[HttpGet]
public string InitDataBase()
{
//1. 如果不存在数据库则创建数据库
_db.DbMaintenance.CreateDatabase();
//2. 创建表
string nspace = "WebModel.Entitys";
// 通过反射读取我们想要的类
Type[] ass = Assembly.LoadFrom(AppContext.BaseDirectory + "Model.dll").GetTypes().Where(p => p.Namespace == nspace).ToArray();
// 创建表的数量 最高 200个
_db.CodeFirst.SetStringDefaultLength(200).InitTables(ass);
// 初始化数据库数据 -- 测试使用 | 正式请删除
string res = "ok";
return res;
}
}
}
image.png2.运行项目=》创建数据库
image.png image.png3.查看数据库是否创建成功(已成功创建)
image.png