EF框架关于在C#代码里进行数据库操作数据的增删改功能

        EF是微软做出的一个专门对数据库表映射成对象的数据库框架,这样的好处就是我们对数据库表进行操作进而变成对对象进行操作。这种框架很好用,就像java里的hibernate框架一样,都是对数据库表进行映射然后操作。接下来我就说明一下EF框架在C#代码里关于增删改的写法(查写法过多,我打算把这个单独列出来)。
        首先 我先说明一个万能用法

万能用法

       可以从我写出的列子看出这种写法几乎包括了我这篇文章想要讲的所有,added(增加),Deleted(删除),Modified(更改)其他两个几乎用不上,也很少用就不讲了,想要知道的百度一下也可以。注意:当使用的时候你向表里传递的数据必须要有确定的主键,如果没有会报错的,这很容易理解,我们写Sql语句的时候where 后面还要有确定的值呢(当然排除你想把整个表相应的数据都换掉)。
       下面开始说一下其他写法

增加

 using (testEntities ef = new testEntities())
            {
                test_user user=new test_user()
                {
                    id=1,
                    user_name="lv22",
                    user_pwd="123456",
                    sex_id=2
                };
                ef.test_user.Add(user);
                ef.SaveChanges();
            }


       这种是比较简单也比较大众的写法(这个user表我的主键是id,自动增长)这里就可以看出尽管我传过去一个确定的id,数据库还是根据自动增长来执行不会使用我已经定义的主键(附加图片结果)

 删除(Linq语句)

​
public bool DeleteSomeBody(string name)
{
    using (FIRST_DBEntities fd = new FIRST_DBEntities())
     {
         //Linq 查询 - 自动转译 T-SQL 语句
         var query = from item in fd.People
         where item.Name == name
         select item;
         //查询到对象后,移除对象
         foreach (var item in query)
         {
         fd.People.Remove(item);
         break;
         }
         int t = fd.SaveChanges();
         //大于 0 说明插入成功
         if (t > 0) return true;
     }
    return false;
}

​

       除了使用万能方法来写 还有就是用Linq语句来写,Linq语句我就不介绍了,想知道了解的猿们百度一下有很多介绍。

       Linq对删改查都能使用,在增的方面我还没见过怎么使用,如果有人知道请在下方留言。

修改/更新(Linq语句)

​
public bool UpdateLiSi()
{
    using (FIRST_DBEntities fd = new FIRST_DBEntities())
    {
        //Linq 查询 - 自动转译 T-SQL 语句
        var query = from item in fd.People
                    where item.Name == "李四"
                    select item;
        //查询到对象后,修改对象属性
        foreach (var item in query)
        {
             item.Age = 30;
             break;
        }
        int t = fd.SaveChanges();
        //大于 0 说明插入成功
        if (t > 0) return true;
     }
     return false;
}

​

         这些就是我近期了解加上网(看视频)找的,可能不全,以后还会补充。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值