本文主要向大家介绍了.NetCore中EFCore for MySQL数据库整理 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。
<
一、MySql官方提供了Ef Core对MySql的支持,但现在还处于预览版
Install-Package MySql.Data.EntityFrameworkCore -Pre
Install-Package MySql.Data.EntityFrameworkCore.Design -Pre
当前程序包依赖Microsoft.EntityFrameworkCore,目前没找到API文档啥的,MySql.Data.EntityFrameworkCore.Design的用法也没 找到。
Nuget包地址 :https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/7.0.7-m61
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/6.10.1-beta
技术分享
二、简单使用示例
1.手写数据库上下文
///
/// 数据库上下文
///
public class Md5Context : DbContext
{
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseMySQL("server=127.0.0.1;port=3306;database=md5data;uid=sa;pwd=123;");
}
public virtual DbSet Md5Data { get; set; }
}
2.手写实体数据库映射,Model
[Table("Md5Data")] //当前预览版中Table指定名称还不支持
public class Md5Data
{
[Key]
public int DataID { get; set; }
public string PlainText { get; set; }
public string UpperCase32 { get; set; }
public string UpperCase16 { get; set; }
public int DencryptCount { get; set; }
public int EncryptCount { get; set; }
public DateTime AddTime { get; set; }
}
3.调试运行
Md5Context _Context = new Md5Context();
List list = _Context.Md5Data.ToList();
return list.Select(q => q.PlainText).ToList();
技术分享
三、说明
1.
这里需要注意了:
public DbSet blog { get; set; }
如果mysql里的表名blog是小写的,这里就要定义成跟表名完全一样,否则会报错
2.Table() 表名的注释,目前还不支持。
本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!