我有一些可以更好地优化的方法,如果有人也可以解释解决方案,那将非常有帮助。我正在使用带有实体框架的 ASP.NET MVC 4。
首先我有这个方法:
//gets all the items by id
var GetAllItems = re.GetAllWorldNewsByID();
// loops through all items
foreach (var newsitemz in GetAllItems)
{
if (newsitemz.Date <= DateTime.Now.AddDays(-2))
{
re.DeleteNews(newsitemz);
re.save();
}
}
如何将此删除循环更改为 Date <= @twodaysold 的 News 中的单个删除?如果我这样做,我想它会提供更好的性能。
此方法位于我的项目中经常使用的存储库文件中。
public void AddNews(News news)
{
var exists = db.News.Any(x => x.Title == news.Title);
if (exists == false)
{
db.News.AddObject(news);
}
else
{
db.News.DeleteObject(news);
}
}
它的作用是检查数据库中是否已经存在新闻条目标题,如果存在则删除条目,否则添加条目。我知道那是它做的不好。为了得到更好的优化,我应该做一个upset
/ merge
。任何形式的帮助表示赞赏。