现在我有一堆使用 SqlConnections/StringBuilder/SqlDataReader 的数据访问方法。我正在尝试将其中一些移至实体框架。我有一个动态附加 where 子句的方法,例如:
sb.AppendLine(" WHERE ");
sb.AppendLine(" (@Value1 is null or Table1.Id = @Value1) " );
sb.AppendLine(" AND (@Value2 is null or Table2.Field = @Value2)" );
sb.AppendLine(" AND (@Value3 is null or Table3.Stuff = @Value3)" );
是否可以在 L2E 方法语法中复制此行为?我需要它可用于一堆不同的方法。这可以做成扩展方法吗?它如何处理从不同表中选择的不同查询?