Elasti c Запросы с Dapper: Процедура ожидает параметр типа 'ntext / nchar / nvarchar' - PullRequest
2 голосов
/ 06 апреля 2020

Я пытаюсь запросить набор Azure SQL Базы данных, используя функцию sp_execute_remote SQL с Dapper и DynamicParameters следующим образом:

Task<List<T>> ExecuteMultiShardCommand<T>(SqlBuilder.Template Template, int Timeout = 120) 
{
    var mParams = new DynamicParameters(Template.Parameters);
    mParams.Add("@datasourcename", "<datasource>");
    mParams.Add("@statement", Template.RawSql, DbType.String);

    using (var conn = new SqlConnection(config["<sqlconnectionstring>"])) 
    {
        var results = await conn.QueryAsync<T>("sp_execute_remote", mParams, commandTimeout: Timeout, commandType: CommandType.StoredProcedure);

        return results.ToList();
    }
}

При выполнении этого выдается SQL исключение:

System.Data.SqlClient.SqlException: процедура ожидает параметр '@statement' типа 'ntext / nchar / nvarchar'.

Я не настроил Dapper где-нибудь в моем приложении. Разве обработка по умолчанию не DbType.String a nvarchar?

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