C# 将扩展方法从linq改为sql改为实体框架
我正在将我的项目从使用Linq改为使用SQL,改为使用实体框架 我有一些扩展方法可以扩展LINQ创建的类,我想知道如何将它们改为使用实体 这里有一个例子C# 将扩展方法从linq改为sql改为实体框架,c#,linq,linq-to-sql,entity-framework,C#,Linq,Linq To Sql,Entity Framework,我正在将我的项目从使用Linq改为使用SQL,改为使用实体框架 我有一些扩展方法可以扩展LINQ创建的类,我想知道如何将它们改为使用实体 这里有一个例子 public static int GetPublishedArticlesCount(this Table<Article> source) { return GetPublishedArticles(source.Context as DataContext, null).Count(); }
public static int GetPublishedArticlesCount(this Table<Article> source)
{
return GetPublishedArticles(source.Context as DataContext, null).Count();
}
public static int getpublishedarticlescont(此表源代码)
{
返回GetPublishedArticles(source.Context作为DataContext,null).Count();
}
此方法获取已发布文章的数量。不要使用
这个表
,我应该用什么来代替呢?EntityFramework中表的模拟(linq 2 sql)是ObjectQueryEntityFramework中表的模拟(linq 2 sql)是ObjectQuery您可能需要使用这个类
public static int getpublishedarticlescont(此ObjectQuery源)
您可能需要使用该类
public static int getpublishedarticlescont(此ObjectQuery源)
如前一张海报所述,您可以使用ObjectQuery获得结果
要使该方法作为ObjectQuery&get count任何类型的扩展方法更通用,这可能会有所帮助:
public static int GetCount<T>(this ObjectQuery<T> query){
return query.CreateQuery<T>(typeof(T).Name).Count();
}
publicstaticintgetcount(此ObjectQuery查询){
return query.CreateQuery(typeof(T).Name.Count();
}
注意:我是从头开始写这段代码的,可能有一些sytax错误
HTH.正如前面的海报所述,您可以使用ObjectQuery获得结果 要使该方法作为ObjectQuery&get count任何类型的扩展方法更通用,这可能会有所帮助:
public static int GetCount<T>(this ObjectQuery<T> query){
return query.CreateQuery<T>(typeof(T).Name).Count();
}
publicstaticintgetcount(此ObjectQuery查询){
return query.CreateQuery(typeof(T).Name.Count();
}
注意:我是从头开始写这段代码的,可能有一些sytax错误
HTH.谢谢,这就是我想要的。谢谢,这就是我想要的。