ORM- EF -增删改查

上一篇讲了如何添加EF文件,现在介绍几点

 一:如何更新EF数据库表和字段

找到上面添加的文件,双击打开  edmx文件

可以看到如图

找到一个空白地方 右击鼠标: 选择  从数据库更新模型

会出现没有添加过的数据表 ,在添加 里面是 未添加到ef中的表,  刷新 是已添加的表,需要更新字段

 

注意在写代码前需要添加两个引用EntityFramework跟EntityFramework.SqlServer

二:代码如何写增删改查代码:

 查询:

实例化   这个需要注意默认是  数据库名称 +Entities

protected GTOWEntities gTOWEntities = new GTOWEntities();

// 查询

 public List<AC_Fokas> EFQueryFokasList()
        {
            //GTOWEntities gTOWEntities = new GTOWEntities();

            //List<AC_Fokas> foraslists = gTOWEntities.AC_Fokas.ToList();
            List<AC_Fokas> foraslists = gTOWEntities.AC_Fokas.Where(s => s.FokasID == 1).ToList();

            return foraslists;
        }

// 新增

       public int EFIntserFokas(List<AC_Fokas> entities)
        {
            int row = 0;
            foreach (AC_Fokas entity in entities)
            {
                gTOWEntities.AC_Fokas.Add(entity);
                if (gTOWEntities.SaveChanges() > 0)
                {
                    row++;
                }
            }
            return row;
        }

//修改

    public int EFUpdateFokas(List<AC_Fokas> entities)
        {
            int row = 0;
            //GTOWEntities gTOWEntities = new GTOWEntities();
            foreach (AC_Fokas entity in entities)
            {
                AC_Fokas updateFokas = gTOWEntities.AC_Fokas.SingleOrDefault(g => g.FokasID == 10);
                updateFokas.ActivityID = 20;
                updateFokas.FokasCount = 10;
                updateFokas.FokasName = "试";
                if (gTOWEntities.SaveChanges() > 0)
                {
                    row++;
                }
            }
            return row;
        }

// 删除

 public int EFDeleteFokas(Array array)
        {
            int row = 0;
            foreach (string fokas in array)
            {
                AC_Fokas fokasmodel = gTOWEntities.AC_Fokas.SingleOrDefault(g => g.FokasID.ToString() == fokas);
                gTOWEntities.AC_Fokas.Remove(fokasmodel);
                if (gTOWEntities.SaveChanges() > 0)
                {
                    row++;
                }
                else
                {
                    // 记录日志 ,删除失败
                }
            }
            return row;
        }

三 app.Config 文件配置需要注意

注意:

1:需要添加  entityFramework 节点

<entityFramework>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>

2:需要链接数据库代码 放在节点connectionStrings中

<add name="GTOWEntities" connectionString="metadata=res://*/HotelModel.csdl|res://*/HotelModel.ssdl|res://*/HotelModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=10.3.90.15;initial catalog=GTOW;user id=test;password=Abcdef1234;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

3:需要添加 configSections节点,并且需要放在configuration的第一个。

例如:

  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections
 

 

全文如下:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
  
  <connectionStrings>
    <!-- dapper orm框架链接数据库方式 -->
    <add name="ConnStr" connectionString="user id=test;pwd=Abcdef1234;data source=10.3.90.15;initial catalog=GTOW" providerName="System.Data.SqlClient" />
    <!-- EF orm框架链接数据库方式 -->
    <add name="GTOWEntities" connectionString="metadata=res://*/HotelModel.csdl|res://*/HotelModel.ssdl|res://*/HotelModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=10.3.90.15;initial catalog=GTOW;user id=test;password=Abcdef1234;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>

  <entityFramework>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值