Недопустимый символ в строке Base-64

Получение нескольких различных исключений, связанных со строками Base-64 в C#. Ниже приведены исключения вместе с образцом строки. Я не слишком много знаю об этой теме, но я считаю, что подтвердил, что длины следующих строк кратны 4. Я надеюсь, что все эти проблемы связаны, но я не уверен. Любая помощь приветствуется.

«Недопустимый символ в строке Base-64». DcxWhbe30oLrUI69U41gSnm7eU2c8qOx7k/eKnSaG3ZDlv8BIPHJKxl0DStVUtsjdxufrZd30K4IAl0XxBIKgKUlOt4k+nVPrfCnM4HHzw19GHnYlTr2DLhw6iD0goEnMk+bJG2xWQ4wRLLn8KOj6DdBxTes6sdpoeWKxcAHPZ2FFXqC3MfQ+SMMV7re9YiY9ZpudFFr1QVRMztzinK5YA==

«Длина данных для расшифровки недействительна». jq6xC0Dv+oeL0MXOei7wNIQgD+aon+S8N2ZfDyAO+5dlm/lIBYN+aCn2Xjnyi/XCzv7Liag5aaKXZ3b+7P7+R7lmarsT9ugnFrnvjInsvUxsbk4EAjIP55O9d7XXYnARW3yjW7klLyR0U9JjMVsISKThDtLe4rOJHgDvYahF454YOn5GlVXBoB+qNnLscGZ6

«Недопустимая длина массива символов Base-64». C8MutyUPoTrmmnprFV3wqxMMVs7O5J4NA61jhZLaCSbwteklqGHFuuSlhf0mH8L5FLJ+jcrWuns2zz+Q/o5tA0DCDGnEAxDxKraR8Ip/iDUrTCS9ZAW0VrZpqUY4EPhyCbSpdU0OwfQ05eHXqwU6LIzz3gqavpi6AlMP9H5GYTaxsfQEByswjizWs5hO2ZmH


person Greg    schedule 16.06.2010    source источник
comment
Есть ли в строке разрывы строк или невидимые символы?   -  person Marks    schedule 16.06.2010
comment
как вы их расшифровываете? мой Convert.FromBase64String прошел успешно   -  person Andrey    schedule 16.06.2010


Ответы (1)


Когда я пошел посмотреть, что я использовал для декодирования строки в ответ на вопрос Андрея, я понял, что делал предположение, которое ослепляло меня от реальной проблемы.

Строка данных передается через параметр строки запроса, и я предположил, что параметр, как показано в пользовательском сообщении об ошибке, которое я получал, был плохой строкой, хотя на самом деле небольшая отладка показала, что строка, которую я фактически пытался декодировать, имеет пробелы . Отправка строки через строку запроса приводила к тому, что все знаки плюс (+) декодировались в пробелы. Я могу решить эту проблему оттуда.

Спасибо всем, кто потратил время на чтение этого довольно ошибочного вопроса.

person Greg    schedule 16.06.2010
comment
Также обратите внимание, что данные ViewState закодированы в Base64, и иногда браузер с ошибками (старые версии Safari?) усекал ViewState и иногда вызывал появление исключений. - person David Crowell; 16.06.2010