Я пытаюсь использовать размещенную здесь библиотеку динамических запросов LINQ - http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx
Он должен работать и для EF, но я не могу заставить его выполнить это требование.
Отлично работает следующее:
List<string> paramsList = new List<string> {"CustomerID"};
var customer =
ctx.Customers.Where(cus=>cus.CompanyName.Contains("A")).Select("new(" +
string.Join(", ", paramsList.ToArray()) +
")");
Однако, если я опущу предложение "Где" и сделаю что-то подобное
List<string> paramsList = new List<string> {"CustomerID"};
var customer =
ctx.Customers.Select("new(" +
string.Join(", ", paramsList.ToArray()) +
")");
Я получаю следующую ошибку:
'new' не может быть преобразован в допустимый конструктор типа или функцию., Вблизи функции, метода или конструктора типа
Это прекрасно работает, если я использую Linq2Sql вместо Linq2Entities.
Что мне здесь не хватает?