ile veri sıralama EF'de bir DbSet sınıfına göre bir siparişi yayınlamanın bir yolu var mı? Bunun bir sorguda yapılması gerekir C#EF DbSet
EF DbSet
cevap
Ben db.Employees bir DBSet İşte
private readonly DbContext context;
...
context.Set<T>().OrderBy(item => item.Property)
kullanıyorum
,
veya EDMX bir QueryView tanımlamak gerekir. Bir QueryView, verileri belirtmek/sıralamak/filtrelemek için kullanılabilir. İşte
var emps = from e in _db.Employees
orderby e.FirstName
select e;
_db.Employees DbSet geçerli: Alexandre tarafından belirtildiği gibi DefiningQuery versus QueryView
Kod ilk yaklaşımı kullanıyorum. Edmx dosyası yok. – Omar
, önce bir EDMX'i koddan tüketebilir, ancak daha sonra bütün kodu ilk konseptine meydan okuyor. –
sizin gibi sorguda bunu yapabilir:
şuna bir bakın.IQueryable erişimi alarak DbSetgelen, ancak DBContext gelen yapabilirsiniz bunun nasıl emin değilim. Yapmaya çalıştığın şey bu mu?
using System.Linq;
namespace MyNamespace
{
public class MyClass
{
public DBContext db;
public void MyMethod
{
foreach (var emp in db
.Employees
.Where(e => e.IsActive) // (or whatever)
.OrderBy(e => e.LastName))
{
DoSomething(emp);
}
}
}
}
.OrderBy
'u doğrudan Entity'de kullanma hakkında ne düşünüyorsunuz?
db.Employees.OrderBy(p => p.Id);
Bunun tam olarak ne istediğimi bilmediğini biliyorum, ancak işin görünümünde tam olarak var. – Omar