[英]Entity Framework extension method (partial class)
假設我有以下代碼
List<Common.Models.Log> logs = new MyEntities().Logs
.OrderByDescending(o => o.Date)
.Take(50)
.ToList();
需要為像這樣的調用方法創建“日志”的子類
List<Common.Models.Log> logs = new MyEntities().Logs.TakeFirst50OrderDateDesc();
我試圖創建部分類以從MyEntities()調用方法。
namespace Common.DataLayers
{
public partial class Log : DbSet<Log>
{
public List<Log> TakeFirst50OrderDateDesc()
{
//blablabla
return new List<Log>();
}
}
}
問題是在新的MyEntities()。Logs之后我看不到TakeFirst50OrderDateDesc。 定義分部類的構造函數可能錯誤嗎? 我該如何解決? 謝謝
嘗試使用擴展方法,例如:
public static IQueryable<Log> TakeFirst50OrderDateDesc(this IQueryable<Log> top50)
{
return top50.OrderByDescending(o => o.Date)
.Take(50);
}
然后,您可以完全按照期望的方式訪問它:
var logs = context.Logs.TakeFirst50OrderDateDesc().ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.