私が見つけたチュートリアルに従って、 MTOM を使用してプロトタイプの WCF サービスを実装しました。
WCF サービスで受信/返すオブジェクトのデータ型が byte[] である限り、これは wsdl で xs:base64Binary に変換され、.net SOAP フレームワークは MTOM を活用し、そのデータの内容を追加の MIME パーツの raw バイナリ。素晴らしい作品!
私の問題は、実際の実装では、変更できないスキーマを扱っており、データ型が string[] であることです。
public 抽象部分クラス BIN : ANY {
... /// <remarks/> [System.Xml.Serialization.XmlTextAttribute()] public string[] Text { get { return this.textField; } set { this.textField = value; } }
私の場合、Text プロパティ (または xml 形式の場合は要素のコンテンツ) は大きなバイナリ データになるため、MTOM 機能を使用して、base64 ではなく追加の MIME パーツに未加工のバイナリとして配置したいと考えています。それをエンコードする...これは可能ですか?