是否可以将扩展方法添加到将其转换为另一种类型的IQueryable的IQueryable?IQueryable <T1>将转换为IQueryable的扩展方法<T2>
我在找这样的东西;
IQueryable<foo> source;
IQueryable<bar> result = source.Convert<bar>();
我有这个,显然它不工作。 LOL
public static IQueryable<T1> Convert<T2>(this IQueryable<T1> source) where T1 : class
{
// Do some stuff
}
在此先感谢。
嗨,乔恩。谢谢回复。之所以我想这是一个扩展方法是因为我不想重复相同的选择代码。我打算使用它将我的模型转换为视图模型。我应该看看automapper吗? – 2013-03-03 19:51:51
@PlatypusMaximus:但是'Select'已经是一种扩展方法。你还没有给我们提供任何关于你如何期望将'T1'转换为'T2'的信息......当然,提供这些信息将使其等同于'Select'。 – 2013-03-03 19:53:45
我在考虑在Convert扩展方法中,我可以通过IQueryable中的项目,并通过将T1传递给构造函数来创建T2的实例 - 但我只是发现我不能只在这个方法中新增一个T2像新的T2(T1)。我会与您的答案一起前进,接着挑战下一个挑战。非常感谢答案,祝你有美好的一天。 – 2013-03-03 20:09:41