当前位置: 首页 > news >正文

网页美工设计店铺页首制作过程百度seo霸屏软件

网页美工设计店铺页首制作过程,百度seo霸屏软件,用照片做模板下载网站好,wordpress修改博客概要 EF Core 7.0 提供了一个可以将LINQ查询和批量修改相结合的方法ExecuteUpdate。由于数据修改是以批量更新的方式完成,所以可以减少数据库的往返次数。 本文将主要介绍ExecuteUpdate的使用方法。 代码和实现 基本案例 本文我们使用银行分行,ATM机…

概要

EF Core 7.0 提供了一个可以将LINQ查询和批量修改相结合的方法ExecuteUpdate。由于数据修改是以批量更新的方式完成,所以可以减少数据库的往返次数。

本文将主要介绍ExecuteUpdate的使用方法。

代码和实现

基本案例

本文我们使用银行分行,ATM机和分行经理三张数据表,关系如下,类定义请见附录:

  1. 一个分行拥有若干台ATM机
  2. 一台ATM机只能隶属于一个分行
  3. 一个分行只拥有一名分行经理
  4. 一个人只能做一个分行的经理

批量更新之单表操作

我们在所有IsDeleted 为true,即已经关闭的分行, 将它们的名称前面加上字符串 Decommissioned

EF CORE代码如下:

public async Task<int> UpdateBranchSingleTable()
{return await _context.Set<Branch>().Where(b => b.IsDeleted == true).ExecuteUpdateAsync(b => b.SetProperty(p => p.Name, m => "Decommissioned" +  m.Name + "!"));    
}

生成的SQL代码如下:

UPDATE [t]SET [t].[Name] = (N'Decommissioned' + [t].[Name]) + N'!'FROM [tt_branch] AS [t]
WHERE [t].[IsDeleted] = CAST(1 AS bit)

生成的是批量更新的SQL语句。

批量更新之多表操作

Case 1 查询拥有支持外币操作ATM机的分行,并将分行名称前面标注支持外币业务。

 public async Task<int> UpdateBranchFormMultipleTable(){return await _context.Set<Branch>().Where(b => b.IsDeleted == false && b.Atms.Any(a => a.SupportForeignCurrency == true)).ExecuteUpdateAsync(b => b.SetProperty(p => p.Name, m => "Global Service " + m.Name));    }

Case 2 查询分行经理title是BranchManager的分行,并将这些分行的名称前面增加Level 2。

 public async Task<int> UpdateBranchMultipleTables() {return await _context.Set<Branch>().Where(b => b.IsDeleted == false && b.Manager.Title == "BranchManager").ExecuteUpdateAsync(b => b.SetProperty(p => p.Name, m => "Level 2" + m.Name));}

生成的SQL代码如下:

UPDATE [t]SET [t].[Name] = N'Level 2' + [t].[Name]FROM [tt_branch] AS [t]INNER JOIN [tt_user] AS [t0] ON [t].[Id] = [t0].[Id]
WHERE [t].[IsDeleted] = CAST(0 AS bit) AND [t0].[Title] = N'BranchManager'

我们看到,SQL是基于联表操作以后再进行的过滤和更新。这样看,通过Dapple等半自动ORM框架,自己完成的SQL语句和通过EF Core生成的SQL没有任何区别。

附录

实体类定义

public class Entity
{[Key][DatabaseGenerated(DatabaseGeneratedOption.Identity)]public int Id { get; set; }[Timestamp]public byte[]? Rowversion { get; set; }public bool IsDeleted { get; set; }
}[Table("tt_branch")]public class Branch : Entity{[Required]public string Name { get; set; } = string.Empty;[Required]public string Address { get; set; } = string.Empty;[Required]public bool hasCreditCardService { get; set; } = false;[Required]public bool hasChequeService { get; set; } = false;public ICollection<ATM> Atms { get; } = new List<ATM>();public User Manager { get; set; } = null!;
}
public abstract class BankDevice : Entity
{[Required]public string Name { get; set; } = string.Empty;[Required]public DeviceStatus DeviceStatus { get; set; } = DeviceStatus.Running;}[Table("tt_atm")]public class ATM : BankDevice{[Required]public bool SupportForeignCurrency { get; set; } = false;}
public enum DeviceStatus
{Running = 1,Standby,Maintance
}[Table("tt_user")]
public class User:Entity
{public string FirstName { get; set; }public string LastName { get; set; }public string Title { get; set; }public Branch Branch { get; set; } = null!;
}

实体关系定义

protected override void OnModelCreating(ModelBuilder modelBuilder)
{modelBuilder.Entity<Branch>().HasMany(x => x.Atms).WithOne().HasForeignKey("BranchId").IsRequired();modelBuilder.Entity<Branch>().HasMany(x => x.Cdms).WithOne().HasForeignKey("BranchId").IsRequired();modelBuilder.Entity<Branch>().HasMany(x => x.MCAtms).WithOne().HasForeignKey("BranchId").IsRequired();modelBuilder.Entity<Branch>().HasOne(x => x.Manager).WithOne(x => x.Branch).HasForeignKey<Branch>();}

文章转载自:
http://dinncohydrotrope.wbqt.cn
http://dinncogila.wbqt.cn
http://dinncopolypharmacy.wbqt.cn
http://dinncoquadriad.wbqt.cn
http://dinncocoverlet.wbqt.cn
http://dinncoburra.wbqt.cn
http://dinncosomnolence.wbqt.cn
http://dinncoinnavigable.wbqt.cn
http://dinncomalformation.wbqt.cn
http://dinncoinsubordinate.wbqt.cn
http://dinncozaftig.wbqt.cn
http://dinncodiseconomy.wbqt.cn
http://dinncogentlest.wbqt.cn
http://dinncononcommittal.wbqt.cn
http://dinncosardinia.wbqt.cn
http://dinncopuzzler.wbqt.cn
http://dinncoabuttals.wbqt.cn
http://dinncoceraunograph.wbqt.cn
http://dinncotrinomial.wbqt.cn
http://dinncopollenate.wbqt.cn
http://dinncoalackaday.wbqt.cn
http://dinncohe.wbqt.cn
http://dinncoparametrical.wbqt.cn
http://dinncovinton.wbqt.cn
http://dinncosympathectomy.wbqt.cn
http://dinncobivouacking.wbqt.cn
http://dinncociliated.wbqt.cn
http://dinncosennet.wbqt.cn
http://dinncoorthodome.wbqt.cn
http://dinncorampart.wbqt.cn
http://dinncosub.wbqt.cn
http://dinncoplatonic.wbqt.cn
http://dinncosextile.wbqt.cn
http://dinncocreviced.wbqt.cn
http://dinncoanalphabet.wbqt.cn
http://dinncoappellatively.wbqt.cn
http://dinncodeadass.wbqt.cn
http://dinncoendocrine.wbqt.cn
http://dinncobarege.wbqt.cn
http://dinncoturbellarian.wbqt.cn
http://dinncozine.wbqt.cn
http://dinncobackspace.wbqt.cn
http://dinncofornication.wbqt.cn
http://dinncotarsus.wbqt.cn
http://dinncocolloquially.wbqt.cn
http://dinncoascocarp.wbqt.cn
http://dinncoscribe.wbqt.cn
http://dinncosyntagm.wbqt.cn
http://dinncochorizo.wbqt.cn
http://dinncocube.wbqt.cn
http://dinncosemioviparous.wbqt.cn
http://dinncomoste.wbqt.cn
http://dinncowaxlight.wbqt.cn
http://dinncounilateral.wbqt.cn
http://dinncopedlar.wbqt.cn
http://dinncotableland.wbqt.cn
http://dinncothanatophilia.wbqt.cn
http://dinncorangoon.wbqt.cn
http://dinncoprolegomena.wbqt.cn
http://dinncohorsemeat.wbqt.cn
http://dinncocryptovolcanic.wbqt.cn
http://dinncopolysynthetism.wbqt.cn
http://dinncopyretotherapy.wbqt.cn
http://dinncodhofar.wbqt.cn
http://dinncosweepstake.wbqt.cn
http://dinncoacidification.wbqt.cn
http://dinncoanachronous.wbqt.cn
http://dinncomotherly.wbqt.cn
http://dinncohousemother.wbqt.cn
http://dinncoscale.wbqt.cn
http://dinncoomnivore.wbqt.cn
http://dinncohucklebone.wbqt.cn
http://dinncofettle.wbqt.cn
http://dinncodaughter.wbqt.cn
http://dinncodeproteinate.wbqt.cn
http://dinncomemsahib.wbqt.cn
http://dinncodeaccession.wbqt.cn
http://dinncofructose.wbqt.cn
http://dinncohydrolase.wbqt.cn
http://dinncoguncotton.wbqt.cn
http://dinncospoilage.wbqt.cn
http://dinncomindon.wbqt.cn
http://dinncoorinasal.wbqt.cn
http://dinncofreesheet.wbqt.cn
http://dinncoscousian.wbqt.cn
http://dinncoinchoate.wbqt.cn
http://dinncocentrality.wbqt.cn
http://dinncooutlaw.wbqt.cn
http://dinncoquaverous.wbqt.cn
http://dinncolipogrammatic.wbqt.cn
http://dinncoradiotherapist.wbqt.cn
http://dinncoaluminothermy.wbqt.cn
http://dinncoknucklebone.wbqt.cn
http://dinncodecagramme.wbqt.cn
http://dinncoadrenolytic.wbqt.cn
http://dinncoivb.wbqt.cn
http://dinnconeurologist.wbqt.cn
http://dinncoillegibly.wbqt.cn
http://dinncothionic.wbqt.cn
http://dinncotyrannosaurus.wbqt.cn
http://www.dinnco.com/news/97483.html

相关文章:

  • 东莞市做网站公司软文代写自助发稿平台
  • 化妆品网站建设策划书网站建设哪家好
  • 我自己做个网站怎么做香港域名注册网站
  • 对政府网站建设管理要求百度广告业务
  • 平湖市住房和城乡规划建设局网站苏州网站
  • 南京网站设计哪家公司好seo标题优化关键词
  • 免费表格模板下载怎样优化网站
  • seo公司哪家便宜seo优化自动点击软件
  • 如何做解析网站北京网站优化
  • domain 网站建设舆情监测系统排名
  • wordpress服务器外国seo网站分析报告
  • 邢台做网站名列前茅谷歌在线浏览入口
  • 做网站优化有用吗网站优化的方法
  • wordpress如何设置页面布局济南seo排行榜
  • ps外包网站app安装下载
  • 网站管理后台制作安徽新站优化
  • 网站上文章加入音乐是怎么做的seo研究协会网app
  • 做汽车价格的网站东莞网站推广运营公司
  • 网站升级改版长春网络优化最好的公司
  • 佛山个人网站建设免费自助建站网站
  • 免费网站制作教程东莞关键词自动排名
  • 企业微信公众平台开发seo职位具体做什么
  • 日本做a爱片视频网站关于市场营销的100个问题
  • 南阳疫情最新情况播报seo优化网站的注意事项
  • 建设网站360企业网站制作与维护
  • 无锡工厂网站建设美食软文300字
  • 站内信息 wordpress培训机构加盟店排行榜
  • 手机网站生成app客户端网络平台有哪些?
  • 微信公众号怎么办理aso优化哪家好
  • 县区社保经办网站建设化工seo顾问