Я пишу скрипт, который будет извлекать данные из одной базы данных в другую с некоторыми изменениями между ними. Сервер MS SQL используется с обеих сторон, но у меня возникают некоторые проблемы, когда запрос SELECT не возвращает полную строку JSON.
Я пытался использовать множество различных методов и функций запросов, но похоже, что проблема не в том, как я запрашиваю информацию, а в том, как скрипт получает JSON.
Это последний запрос, который я пробовал, ничего сложного, и он получает информацию.
var fishQuery = "SELECT [Id],[Name],[OrgNumber] FROM Camps ORDER BY [Id] OFFSET 5 ROWS FETCH NEXT 1000 ROWS ONLY FOR JSON PATH";
РЕДАКТИРОВАТЬ: Следует отметить, что именно так я трактую строку после.
var campsInfo = fishConnection.Query<string>(fishQuery).First();
List<Camps> Camps = new List<Camps>();
Camps = (JsonConvert.DeserializeObject<List<Camps>>(campsInfo));
Однако я получаю следующие ошибки в Visual Studio:
Newtonsoft.Json.JsonReaderException: 'Unterminated string. Expected delimiter: ". Path '[20].Name', line 1, position 2033.'
Если я распечатываю его в файл или консоль, я получаю
(A lot more valid JSON data before this...) (...) {\"Id\":\"173246A1-8069-437C-8731-05DBE69C784F\",\"Name\":\"SKANSE"
Что показывает, что я получаю неверный JSON, так как результат останавливается на полпути.
Я прочитал некоторые из них:
Как вы просматриваете ВЕСЬ текст из ntext или nvarchar (max) в SSMS?
SQL Server - оператор «для пути json» не возвращает более 2984 строк строки JSON
Но я не заинтересован в том, чтобы вносить изменения и в мой SQL-сервер, работающий в atm, прежде чем я знаю, что смогу исправить это на моей стороне!
Спасибо за любую помощь!