Все, у меня есть следующее Append, которое я выполняю, когда создаю одну строку для фиксированного текстового файла.
formattedLine.Append(this.reversePadding ?
strData.PadLeft(this.maximumLength) :
strData.PadRight(this.maximumLength));
Это конкретное исключение происходит в PadLeft(), где this.maximumLength = 1,073,741,823 [длина поля NVARCHAR(MAX), полученная из SQL Server]. formattedLine = "101102AA-1" во время исключения, так почему это происходит. У меня должна быть максимально допустимая длина 2,147,483,647?
Мне интересно, будет ли здесь https://stackoverflow.com/a/1769472/626442 ответом, однако , я управляю любой памятью с помощью соответствующих Dispose() вызовов любых одноразовых объектов и using блоков, где это возможно.
Примечание. Этот фиксированный экспорт текста выполняется в фоновом потоке.
Спасибо за ваше время.
Append, который бросает заголовок, но затем в теле вы говорите, что этоPadLeft. Я сильно подозреваю, чтоAppendздесь неуместно. - person Jon Skeet   schedule 27.11.2012Disposeдля объектов не вызывает сборщик мусора. к вашему сведению. - person recursive   schedule 27.11.2012