Действительно ли это - хорошая практика для возврата байта [] в сервисе WCF, который будет вызван многими приложениями
ниже код
public byte[] GetDoc(string docParam)
{
byte[] doc;
doc = GenerateDoc(docParam);
}
Спасибо
Хорошей практикой является объединение общего кода в удобный метод, чтобы многие вызывающие могли вызвать этот удобный метод. Это не зависит от типа возврата. Если вызывающим потребуется манипулировать byte[]
, то это может стать удобным и устранить избыточный код.
Кстати, что касается кода, который вы выложили, это реальный код или просто пример? Если это реальный код:
byte[]
. return doc;
в качестве последней строки, то почему GenerateDoc()
находится внутри GetDoc()
? GetDoc()
не дает никакой реальной пользы. Он используется, когда вы хотите передать двоичный буфер, а также выполнить передачу больших данных с использованием кодирования MTOM (установлено в конфигурации привязки). Информация о том, как выполнить передачу больших данных , находится здесь .
Определенно возможно вернуть байт []
, и WCF позволяет делать это с использованием кодирования MTOM.
Если размер двоичного буфера большой, вы можете использовать потоковую передачу WCF . В этом случае вы должны вернуть тип данных Stream
и читать из этого Stream
на стороне клиента.