是否可以將擴展方法添加到將其轉換爲另一種類型的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