在WCF服务中返回一个将由许多应用程序调用的byte []是一个好习惯
下面是代码
public byte[] GetDoc(string docParam)
{
byte[] doc;
doc = GenerateDoc(docParam);
}
由于
答案 0 :(得分:2)
将常用代码分解为方便的方法是一种很好的做法,这样许多调用者就可以调用这种方便的方法。这与返回类型无关。如果调用者需要操纵byte[]
,那么这可以变得方便并消除冗余代码。
顺便说一下,关于您发布的代码,是真实代码还是仅仅是一个示例?如果它是真正的代码:
byte[]
。return doc;
作为最后一行,为什么GenerateDoc()
内有GetDoc()
? GetDoc()
并没有真正带来任何真正的好处。答案 1 :(得分:2)
绝对可以返回byte[]
,WCF允许您使用MTOM编码执行此操作。
如果二进制缓冲区的大小很大,您可以使用WCF streaming。在这种情况下,您将返回Stream
数据类型,并从客户端的Stream
读取。
答案 2 :(得分:0)
当您想要传输二进制缓冲区时使用它,并使用MTOM编码执行大数据传输(在Binding配置上设置)。如何执行大数据传输found here。