Версия linq2db 2.7.4, СУБД — MS SQL Server 2017.
При использовании функции STRING_AGG (LinqToDB.Sql.StringAggregate) SQL Server выдаёт ошибку «Argument data type nvarchar is invalid for argument 2 of string_agg function».
В C# коде передаю в функцию строку
", " в качестве разделителя, а агрегируются значения из столбца таблицы с типом данных varchar.
Linq2Db преобразует разделитель
", " в nvarchar строку
N', '. А это не нравится функции STRING_AGG, потому что «If the input expression is type VARCHAR, the separator cannot be type NVARCHAR» (
).
Вопрос: можно как-то заставить linq2db генерировать varchar строку, без префикса
N?
Попытка обернуть
", " с помощью функции LinqToDB.Sql.AsSql не помогла.
Понятно, что можно сконвертировать строку в varchar (
Sql.Convert(Sql.DefaultVarChar, ", ")), но это как-то совсем не хочеться делать.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>