1 Star 0 Fork 153

幽冥狂 / NetCoreFast

forked from 风起兮 / NetCoreFast 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
Base.md 85.87 KB
一键复制 编辑 原始数据 按行查看 历史
风起兮 提交于 2020-09-11 11:39 . 文档

快速开发

1、安装

(1)、下载本脚手架,用vs打开
(2)、安装Redis。即时聊天和缓存用到了redis

2、编写Model实体类

第1步、在Model文件夹添加model实体类

实体类统一继承ID或UserID或TreeID等。以ID结尾的表示父类,存放了统一公共属性。TreeID表示实体类是树形结构

第2步、将编写的实体类添加到Model.MyDbContext数据上下文

public class MyDbContext : DbContext
    {        
        public virtual DbSet<Product> Products { get; set; }
        public virtual DbSet<Order> Orders { get; set; }
    }

第3步、编写数据库连接字符串。在appsettings.Development.json或appsettings.json配置文件

 "ConnectionStrings": {
    "SqlServer": "Data Source=.;Initial Catalog=taobao;Integrated Security=True"   
  }

Initial Catalog=taobao设置数据库名称


第4步、数据迁移(添加数据库版本)

即更新数据库版本。添加、删除实体或者修改了实体,都要执行数据迁移。


步骤:
visual studio2019—>工具—>NuGet包管理器—>程序包管理器控制台—>选择默认项目(Model),输入命令 Add-Migration 数据库版本名,如:Add-Migration test1,回车确认执行


注意:每次执行Add-Migration命令,数据库版本名(号)要比上一个版本大

第5步、此时可以运行web项目,查看数据库表是否生成

3、编写DAL数据访问类、BLL业务逻辑类、Controller控制器类

本脚手架,高度封装,写法统一规范,多数代码相似,所以可以做到一键生成增加、修改、删除、查询代码,仅部分逻辑需要手写

代码自动生成器(Web/CodeGen):

第1步、添加需要生成代码的实体类。Program.cs文件Main函数:

       public static void Main(string[] args)
       {
        //自动代码生成器
        //models存放的是需要生成dal、bll、controller的model实体类。
        List<string> models = new List<string>();
        models.Add("CourseClass");  
	    ……其他需要自动生成dal、bll、controller的实体类
        CreateHostBuilder(args).Build().GenCode(models);//如果仅仅是需要生成代码不运行项目,运行本语句
		//CreateHostBuilder(args).Build().InitDB<MyDbContext>().Run();//运行项目,执行本语句
       }	

第2步、运行Program.cs文件,自动生成代码

注意:

  • 如果代码是自动生成的,且手动改过,再自动生成的话,会把手动修改的还原,慎重
  • controller控制器类,目前只能生成controller目录下admin目录的控制类,即管理员控制器类,其他如会员控制器类自行复制修改

第3步、重新生成项目,运行、浏览器访问。

运行项目需要修改运行Program.cs文件

       public static void Main(string[] args)
       {
        //自动代码生成器
        //models存放的是需要生成dal、bll、controller的model实体类。
        List<string> models = new List<string>();
        models.Add("CourseClass");  
	    ……其他需要自动生成dal、bll、controller的实体类
        //CreateHostBuilder(args).Build().GenCode(models);//如果仅仅是需要生成代码不运行项目,运行本语句
		CreateHostBuilder(args).Build().InitDB<MyDbContext>().Run();//运行项目,执行本语句
       }	

运行效果

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/youmingkuang/NetCoreFast.git
git@gitee.com:youmingkuang/NetCoreFast.git
youmingkuang
NetCoreFast
NetCoreFast
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891