[英]How to optimize this entity framework code
我正在使用和从实体API获取电影元数据,并使用以下代码使用实体框架将其添加到数据库中
调用一部电影时,此代码最多占用20%的CPU。 我将一个上下文用于一个插入。 Add()和DBSet.Local.Where(..)方法在这里最昂贵。 如何优化代码以减少CPU。
更新:在代码分析中,我发现DBSet.Local.Where(..)是CPU耗尽的地方。 我之所以要调用DBSet.Local.Where的原因是要确定我是否已经添加了该对象(人),以便不重新添加它。 有什么想法吗?
可以通过调用Movies.Find(Movie.Id)
来优化此Movies.Where(My => My.ID == Movie.Id).FirstOrDefault()
Movies.Find(Movie.Id)
。
查找具有给定主键值的实体。 如果上下文中存在具有给定主键值的实体,则将立即返回该实体,而无需向商店提出请求。 https://msdn.microsoft.com/zh-CN/library/gg696418(v=vs.113).aspx
我没有看到对Add()
任何优化
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.