0
是否可以在可移植類庫中創建一個LINQ表達式並在應用程序的其他部分中重用該表達式?對我來說,一個便利的用例就是在平臺上的CompiledQuerys中使用這些表達式,而不是多次複製/粘貼相同的代碼。重用在可移植類庫中創建的LINQ表達式
到目前爲止,我所有的嘗試都是拋出一些或多或少沒有意義的運行時異常(NullReferenceException
,Column not found ..)。我猜測PCL中的LINQ表達式的處理方式與例如WP應用程序中的不同?
public class SomeClassNotInPCL
{
private static readonly Func<Context, int, MyClass> CompiledQuery =
CompiledQuery.Compile(ClassFarAway.MethodInsidePCL());
}
public class ClassFarAway
{
private static Expression<Func<IContext, int, MyClass>> MethodInsidePCL()
{
return (context, id) => context.MyClass.FirstOrDefault(m => m.Id == id);
}
}
Expression in as Linq Expressions or Regular Expressions? – user7116 2012-08-08 21:29:08
好點。我對System.Linq.Expressions.Expression感興趣。 – UnclePaul 2012-08-08 21:35:25
示例代碼可以幫助很大。這是L2SQL嗎? L2EF? L2O? – user7116 2012-08-08 21:37:00