Winform EF CodeFist方式连接数据库
直接生成ado.net 实体数据模型挺方便的,但只有一步步的手写代码才能更好的理解EF,在学习asp.net core过程中手写代码已经明白了怎么回事,但实现过程有些麻烦不知道如何记录,但Winform连接比较简单先记录一下
一、创建Winform程序,并在app.config中添加数据库连接字符串
<connectionStrings> <add name="Northwind" connectionString="Data Source=127.0.0.1;Initial Catalog=Northwind;Persist Security Info=True;User ID=sa;Password=******" providerName="System.Data.Sqlclient" <!--providerName必须要有--> /> </connectionStrings>
添加一个Model类Region
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace EFDemo.Model { [Table("Region")] //必须指定数据表名 public class Region { [Key] public int RegionID { get; set; } public string RegionDescription { get; set; } } }
一个Context类DataContext
using System.Data.Entity; using EFDemo.Model; namespace EFDemo.Data { public class DataContext:DbContext { //name=app.config连接字符串的连接名称 public DataContext() : base("name=Northwind") { } //DBSet类表示一个实体的集合,用来创建、更新、删除、查询操作,DBSet<TEntity>是DBSet的泛型版本 public DbSet<Region> Region { get; set; } } }
Form调用EF过程
namespace EFDemo.WinAPP { public partial class Form1 : Form { //设置为私有的,本窗内才能访问 private DataContext dataContext; public Form1() { InitializeComponent(); //实例化DataContext dataContext = new DataContext(); } private void button1_Click(object sender, EventArgs e) { var regions = dataContext.Region.ToList(); dataGridView1.DataSource = regions; } } }
本文来自博客园,作者:liessay,转载请注明原文链接:https://www.cnblogs.com/liessay/p/12905535.html