için toplam satır sayısı bir tablo için toplam satır sayısını almak üzere Entity Framework kullanıyorum. Sadece satır sayımını istiyorum, hayır cümlesi ya da bunun gibi bir şey. Aşağıdaki sorgu çalışır, ancak yavaştır. 4475 sayısını döndürmek yaklaşık 7 saniye sürdü.Entity Framework
Buradaki tahminim, tablonun tümünde, IEnumerable.Count() uzantı yönteminin nasıl çalıştığı gibi yinelenmesidir.
Toplam satır sayısını "hızlı" alabilmemin bir yolu var mı? daha iyi bir yolu var mı
public int GetLogCount()
{
using (var context = new my_db_entities(connection_string))
{
return context.Logs.Count();
}
}
nasıl içeriğini yüklemeden EntityFramework içinde satırları COUNT? http://stackoverflow.com/questions/890381/how-to-count-rows-within-entityframework-without-loading-contents – sevdalone
context.Logs öğesinin bir IEnumerable değil, bir DbSet, IDbSet veya bir IQueryable olduğundan emin olun. IEnumerable ise, tüm tablo alınacak ve sayılacaktır. Bir IQueryable ise, sorgu, veritabanında "SELECT COUNT (*) dbo.Logs FRUM" gibi bir şey olacak satırları saymak için üretilecek "(Bu bir IdbSet veya DbSet ise, bir IQueryable olarak ele alınır)) – Grax