Entity Framework Core генерирует при использовании Include с параметризованным вводом - PullRequest
1 голос
/ 24 октября 2019

В EF Core 2.2.6 мне нужно построить динамический запрос с параметризованным вводом. Я начинаю с построения оператора:

var rawSql = new StringBuilder("SELECT * FROM dbo.Projects ");
var sqlParameters = new List<SqlParameter>();

rawSql.Append(string.Format("WHERE ProjectId < @param"));
sqlParameters.Add(new SqlParameter("@param", "20"));

Затем выполняю его:

var projects = await _context.Projects.FromSql(rawSql.ToString(), sqlParameters.ToArray())
    .ToListAsync();

Это работает. Но если я добавлю Include, то получится

ArgumentException: SqlParameter уже содержится в другой SqlParameterCollection`

var projects = await _context.Projects.FromSql(rawSql.ToString(), sqlParameters.ToArray())
    .Include(p => p.Managers)
    .ToListAsync();

Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...