netcore mvc efcore 简单框架搭建+增删改查

该例子使用的数据库是 mysql;.net core 框架,版本(sdk)是3.1。

一:创建个net core 版本的mvc

netcore mvc efcore 简单框架搭建+增删改查

 目标框架选   net core3.1

netcore mvc efcore 简单框架搭建+增删改查

 二:项目创建好之后  先安装今天要使用到的nuget包(下载的包最好也是3.1版本的)

Microsoft.EntityFrameworkCore;

Microsoft.EntityFrameworkCore.Design;

Microsoft.EntityFrameworkCore.Tools;

Pomelo.EntityFrameworkCore.MySql;

例如:(你可以手动用nuget界面安装,也可以写语句安装

netcore mvc efcore 简单框架搭建+增删改查

 三:整体配置

1.数据库连接在appsettings.json里

//连接数据库
  "AppConfig": {
    "AesKey": "11*222sdf52sf2f2fsdf/.*222,ssddd",
    "DbConn": "Server=localhost;port=3306;database=user;uid=root;pwd=root;Convert Zero Datetime=True;"

  }

 

 2.创建一个类 :AppConfig

public class AppConfig
    {
        /// <summary>
        /// Aes密钥
        /// </summary>
        public string AesKey { get; set; }

        /// <summary>
        /// 数据库链接字符串
        /// </summary>
        public string DbConn { get; set; }
    }

 

3.添加一个类:NetcoremvcDbcontext作为上下文,并且继承: DbContext类

 public class NetcoremvcDbcontext : DbContext
    {
        private string _connectionString;

 
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            var connectionString = _connectionString;
            //连接数据库UseMySql关键词
            //MaxBatchSize一个指示将编译为单个批处理的最大页数的整数值。 默认页数为 1000。(当前最大处理量是30条)
            optionsBuilder.UseMySql(connectionString, b => b.MaxBatchSize(30));


        }
        public NetcoremvcDbcontext(IOptionsSnapshot<AppConfig> options)
        {
            _connectionString = options.Value.DbConn;
        }

        public DbSet<User> User { get; set; }
    }

 

四:创建一个实体类

 public class User
    {
        public string Id { get; set; }

        public string Name { get; set; }

        public string Phone { get; set; }

        public int Age { get; set; }

        public string Like { get; set; }
    }

 

五:创建一个新的带有模板的视图控制器

1. 创建新的控制器

netcore mvc efcore 简单框架搭建+增删改查

 

 2.选中你的实体

netcore mvc efcore 简单框架搭建+增删改查

netcore mvc efcore 简单框架搭建+增删改查

 

 六:文件startup配置

因为启动项program默认指向startup,所以配置都写在startup里

首先startup文件ConfigureServices方法中添加

 services.AddDbContext<NetcoremvcDbcontext>();
 services.Configure<AppConfig>(Configuration.GetSection("AppConfig"));

netcore mvc efcore 简单框架搭建+增删改查

 

startup中Configure方法里的路由换成你自己项目的默认路由

netcore mvc efcore 简单框架搭建+增删改查

 七:连接数据库和模型迁移

1.找到程序包管理后台输入添加语句:Add-Migration init1 添加新的迁移

成功后项目中会出现一个名为Migrations的文件夹

netcore mvc efcore 简单框架搭建+增删改查

说明生成成功了 

2.更新语句:Update-Database

netcore mvc efcore 简单框架搭建+增删改查

 更新语句是更新数据库到指定的迁移

 查看数据库中表已经创建了

netcore mvc efcore 简单框架搭建+增删改查

 

 使用这个mvc视图模板创建的控制器和视图可以自动生成简单地   增删改查方法,现在去看下你新创建的控制器是不是有基础的增删改查,你也可以运行一下项目看效果

下面是我的效果图

netcore mvc efcore 简单框架搭建+增删改查

该文章的对象关系映射只是用了最简单的,我觉得最合适最好用的请查看文章 :EF Core对象关系映射多种方法

这个例子很简单建议自己动手写。

百度网盘

链接:https://pan.baidu.com/s/1g0F3jH2aou9Ka7X0ulKhHg
提取码:dtsp

 

原文链接:https://www.cnblogs.com/ererjie520/p/17325166.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:netcore mvc efcore 简单框架搭建+增删改查 - Python技术站

(0)
上一篇 2023年4月22日
下一篇 2023年4月22日

相关文章

  • C#连接Oracle数据库使用Oracle.ManagedDataAccess.dll

    首先,要使用C#连接Oracle数据库,需要引用Oracle.ManagedDataAccess.dll库,并且在代码中使用相应的命名空间。以下是使用Oracle.ManagedDataAccess.dll连接Oracle数据库的步骤: 步骤一:引用Oracle.ManagedDataAccess.dll文件 在Visual Studio中新建项目后,右键“…

    C# 2023年6月2日
    00
  • ListView异步加载图片实现思路(优化篇)

    ListView异步加载图片是常见的Android开发需求之一。在加载大量图片时,如果不使用异步加载,会严重影响应用性能和用户体验。本篇文章主要讲解如何使用ListView实现异步加载图片,并对其进行优化。 实现思路 创建一个ViewHolder类并在其中声明ImageView控件。 在ListView中加入标记每一个ImageView的Tag。 利用Lru…

    C# 2023年6月6日
    00
  • C#实现猜数字小游戏

    C#实现猜数字小游戏 简介 猜数字小游戏是一种经典的游戏,玩家需要通过猜测数字来获得游戏胜利。在这个小游戏的实现过程中,我们使用C#语言,通过控制台进行交互。 实现过程 确定游戏规则 在开始实现之前,我们需要确定游戏的规则。猜数字小游戏的规则可以如下: 游戏系统会生成一个随机数字,范围为1-100之间 玩家需要通过输入数字来猜出系统生成的随机数字 如果玩家猜…

    C# 2023年6月1日
    00
  • C#和SQL实现的字符串相似度计算代码分享

    下面是对于”C#和SQL实现的字符串相似度计算代码分享”的完整攻略: 1. 确定算法 首先,需要确定要使用哪种算法来计算字符串相似度。常见的有Levenshtein Distance算法和Jaccard Similarity算法。在本文中,我们将使用Jaccard Similarity算法。 Jaccard Similarity算法是通过比较两个字符串中的共…

    C# 2023年6月6日
    00
  • C#文件操作的简单实例

    我们来详细讲解一下”C#文件操作的简单实例”攻略。 概览 在C#中,文件操作主要包含5部分内容: 创建文件(Create File) 写入文件(Write to File) 读取文件(Read File) 删除文件(Delete File) 复制文件(Copy File) 下面我们将逐一介绍这些操作。 创建文件 我们可以使用File类的Create方法创建一…

    C# 2023年6月7日
    00
  • .NET生成水印更好的方法实例代码

    下面是”.NET生成水印更好的方法实例代码”的完整攻略。 1. 简介 水印技术广泛用于版权保护和数据安全方面。在.NET中,生成图片水印可以使用System.Drawing命名空间。但是,使用此命名空间生成的水印图片质量可能比较低,本文将介绍一些更好的方法。 2. 方法一:使用ImageSharp ImageSharp是.NET平台上的一个基于cross-p…

    C# 2023年5月31日
    00
  • 由ASP.NET Core读取Response.Body引发的思考

    前言     前几天有群友在群里问如何在我之前的文章《ASP.NET Core WebApi返回结果统一包装实践》的时候有点疑问,主要的疑问点就是关于Respouse的读取的问题。在之前的文章《深入探究ASP.NET Core读取Request.Body的正确方式》曾分析过关于Request的读取问题,需要读取Response的场景同样经常遇到,比如读取输出…

    C# 2023年4月18日
    00
  • c#求两个数中最大值的方法

    下面是针对”C#求两个数中最大值的方法”问题的完整攻略,分为以下步骤: 1. 基本思路 我们可以使用if语句或三目运算符来比较两个数的大小,从而得到它们中的最大值。 2. 使用if语句求解 以下是使用if语句的C#代码示例: int a = 5; int b = 10; int max = 0; if (a > b) { max = a; } else…

    C# 2023年6月1日
    00
合作推广
合作推广
分享本页
返回顶部