如何在使用非泛型EF db.Set(type)时获得.top(5)
本文关键字:type top Set db EF 泛型 | 更新日期: 2023-09-27 18:11:23
我该怎么做呢?
public object[] GetFiveObjects(Type mytype){
var db = new MyContext();
return db.Set(mytype). ->Take(5) ???
}
var db = new MyContext();
return db.Set(mytype).OfType<object>().Take(5)
我不明白为什么非通用…还是我遗漏了什么?
这样的内容非常直接和简单:
public IEnumerable<T> GetFirstFive<T>() where T : EntityObject
{
Entities dbContext = new Entities();
return dbContext.CreateObjectSet<T>.Take(5);
}
这样,你可以得到你想要的任何实体的前五个实体。
无论如何,好的问题会带来更好的答案。
最简单的方法是使用.Cast<object>()
,即:
public object[] GetFiveObjects(Type mytype){
var db = new MyContext();
return db.Set(mytype).Cast<object>().Take(5).ToArray();
}