Если я использую кодирование Base64 или байт [] для возврата двоичных данных в веб-сервисе.NET

У меня есть простой вопрос. Я должен возвратить массив байтов, или просто base64 кодируют мои двоичные данные при представлении его через веб-сервис в.NET? Есть ли любые профессионалы/недостатки с любым методом, который главным образом поддерживается и т.д.

8
задан Siewers 26 March 2010 в 08:13
поделиться

2 ответа

Использовать байтовый массив. По протоколу SOAP этот массив байтов будет автоматически сериализован с использованием кодировки base64. Ваш веб-сервис также будет более наглядным, если вы будете использовать байтовый массив. Представьте себе человека, который хочет использовать вашу веб-службу и смотрит на метод, сигнатура которого выглядит так:

string GetBinaryImageFromDatabase();

Он может задаться вопросом, почему этот метод возвращает строку и что я собираюсь делать с этой строкой, а если он возвращает байт array намного понятнее.

Я видел метод веб-службы, который выглядел следующим образом:

string SaveCustomer(string customer);

Угадайте, что это были за клиент и возвращаемые типы: это был какой-то проприетарный XML. Нет абсолютно никакого смысла использовать SOAP, если люди заново изобретают протоколы поверх него.

10
ответ дан 5 December 2019 в 17:35
поделиться

Одно из соображений заключается в том, что строка в кодировке Base64 позволяет использовать «Тестовую форму» для отладки любых проблем и т. Д. Массив байтов представляет собой сложный тип. поэтому тестовая форма работать не будет.

0
ответ дан 5 December 2019 в 17:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: