WCF 4.0 REST上载MS Excel文件

WCF 4.0 REST上载MS Excel文件,wcf,rest,file-upload,Wcf,Rest,File Upload,我正在尝试通过WCF-REST服务上载MS Excel文件。 我使用了下面帖子中给出的解决方案:- 我的POST方法声明为: [OperationContract] [WebInvoke(Method = "POST", UriTemplate = "/RFQ")] [WebContentType("application/octet-stream")] void UploadRFQDoc(Str

我正在尝试通过WCF-REST服务上载MS Excel文件。 我使用了下面帖子中给出的解决方案:- 我的POST方法声明为:

  [OperationContract]
                [WebInvoke(Method = "POST", UriTemplate = "/RFQ")]
                [WebContentType("application/octet-stream")]
                void UploadRFQDoc(Stream fileContents);
当我调试时,流内容在调用之前是正常的,当我将服务附加到调试时,流文件内容参数变为null,服务返回[Bad Request]。我没有发送大文件(只有50KB)。我正在使用HttpClient给Post打电话。 以下是客户端代码(RestClient是HttpClient)

任何其他可能出错的线索。 非常感谢。

[WebContentType(“应用程序/八位字节流”)]属性在这里是不必要的。我把它注释掉了,一切都很好:)

 protected void Post(string uri, Stream stream, int length)
        {
            var content = HttpContent.Create(output => CopyToStream(stream, output, length), "application/octet-stream", length);
            Uri relativeUri = new Uri(uri, UriKind.Relative);

            var resp = RestClient.Post(relativeUri, content);

            ProcessResponse(resp);
        }

        void CopyToStream(Stream input, Stream output, int length)
        {
            var buffer = new byte[length];
            var read = input.Read(buffer, 0, Convert.ToInt32 (length));

            output.Write(buffer, 0, read);
        }