[英]Extension method on datacontext Linq to sql
是否可以在DataContext上(而不是在datacontext中的表上)而是直接在dataContext上创建扩展方法来动态获取表。
例如:
DataContext dc = new DataContext();
var test = from a in dc.myExtensionMethod(args) select a;
ps:我已经知道dc.GetTAble
和dc.GetTable<T>
有可能,但是由于类是局部的,因此您可以简单地将方法添加到其他文件中
例:
namespace System.Data.Linq
{
public static class DataContextExtensions
{
public static bool IsConnected(this DataContext context)
{
return (context.Connection.State == ConnectionState.Open);
}
}
}
这样的事情应该起作用:
public static IQueryable myExtensionMethod(this DataContext dc)
{
...
}
我不确定您的参数是什么,或者您是否要匹配GetTable的签名,但是...
namespace System.Data.Linq
{
public static class DataContextExtensions
{
public static (Table<T>,IQueryable, whatever)
MyExtensionMethod(this DataContext context, Args args)
{
//do your magic here
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.