我必须向需要以下架构作为输入的WCF服务发送MTOM请求:
<xs:complexType name="BinaryRequest">
<xs:sequence>
<xs:element minOccurs="0" name="requestContent" nillable="true" type="BinaryRequestContent" />
</xs:sequence>
</xs:complexType>
<xs:element name="BinaryRequest" nillable="true" type="BinaryRequest" />
<xs:complexType name="BinaryRequestContent">
<xs:sequence>
<xs:element minOccurs="0" name="partData" nillable="true" type="xs:base64Binary" />
<xs:element minOccurs="0" name="partNumber" type="xs:int" />
<xs:element minOccurs="0" name="transactionId" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="BinaryRequestContent" nillable="true" type="BinaryRequestContent" />
正如您所看到的,“partData”属性的类型为byte [],我希望能够将其流式传输并将其发送到单独的MIME部分。
使用http://seroter.wordpress.com/biztalk-and-wcf-part-iv-attachment-patterns/中的示例是不可能的,因为我的二进制数据只是响应的一部分。
知道怎么做吗? 我有一个测试解决方案,但二进制内容是作为base64内联发送的,不作为附件分开 https://docs.google.com/file/d/0B1M277-_UZ35Si1JWWw5Nm9ia0E/edit?usp=sharing