博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EF 示例
阅读量:6609 次
发布时间:2019-06-24

本文共 1861 字,大约阅读时间需要 6 分钟。

hot3.png

1.添加数据库连接串

<configuration>

  <connectionStrings>
    <add name="MYConnection" connectionString="Data Source=.;Initial Catalog=Test;Persist Security Info=True;User ID=sa;Password=123456;"     providerName="System.Data.SqlClient" />
  </connectionStrings>

</configuration>

2.创建实体映射关系

    public class PeopleMap : EntityTypeConfiguration<People>

    {
        public PeopleMap()
        {
            //设置主键
            this.HasKey(t => t.id);

            //设置验证

            this.Property(t => t.name).HasMaxLength(10).IsOptional();

            //设置对应的表

            this.ToTable("People");

            //设置与数据库对应的字段

            this.Property(t => t.id).HasColumnName("id");
            this.Property(t => t.age).HasColumnName("age");
            this.Property(t => t.name).HasColumnName("name");

        }

    }

3.实现DBContext类,创建数据库连接串

    /// <summary>

    /// 数据库连接串
    /// </summary>
    public class MyDbContext:DbContext
    {
        public MyDbContext()
            : base("name=MYConnection")
        {

        }

        public DbSet<People> peoples { get; set; }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)//添加实体映射关系表

        {
            base.OnModelCreating(modelBuilder);

            modelBuilder.Configurations.Add(new PeopleMap());

        }

    }

4.增删改查基本方法

        public void getEFAdd()
        {
            using (var con = new MyDbContext()) {

                con.peoples.Add(new People()

                {
                    id = 2,
                    name = "吴彦祖",
                    age = 12
                });

                con.SaveChanges();

            
            }
        }

        public void getRemove()

        {
            using (var con = new MyDbContext())
            {
                var p = con.peoples.FirstOrDefault(t => t.id == 2);
                if (p != null)
                {
                    con.peoples.Remove(p);
                }
                con.SaveChanges();
            }
        }

        public void getUpdate()

        {
            using (var con = new MyDbContext())
            {
                People p = con.peoples.Find(1);
                p.age = 20;
                con.SaveChanges();
            }
        }

        public void getData()

        {
            using (var con = new MyDbContext())
            {
                List<People> list = con.peoples.Where(t => t.id > 0).ToList<People>();
            }
        }

5.前台调用

function add() {

        alert("add");
        $.ajax({
            type: "POST",
            contentType: "application/json",
            url: "EF/getEFAdd",
            dataType: 'text',
            async: true,
            success: function (res) {
                alert(res);
            }
        })
    }

转载于:https://my.oschina.net/u/3141521/blog/3030723

你可能感兴趣的文章
asp.net后台进程做定时任务
查看>>
Ural_1671. Anansi's Cobweb(并查集)
查看>>
Web墨卡托坐标与WGS84坐标互转
查看>>
给vs2012换肤
查看>>
java接口中多继承的问题
查看>>
索引笔记《二》确定需要建立索引的列
查看>>
libjpeg的问题
查看>>
MySQL数据库学习笔记(八)----JDBC入门及简单增删改数据库的操作
查看>>
git 显示多个url地址推送
查看>>
Java Web之Filter
查看>>
HTTP状态码详解
查看>>
Java_动态加载
查看>>
为什么国外程序员爱用苹果 Mac 电脑?
查看>>
atitti.atiNav 手机导航组件的设计
查看>>
Ubuntu+Apache+PHP+Mysql环境搭建(完整版)
查看>>
Atitit.计算机图形图像图片处理原理与概论attilax总结
查看>>
于ssh端口转发的深入实例[转 - 当当 - 51CTO技术博客
查看>>
从Python安装到语法基础,这才是初学者都能懂的爬虫教程 ...
查看>>
超级AD远程管理软件
查看>>
Oracle数据库安全加固记录
查看>>