相关疑难解决方法(0)

WCF:使用流式传输与消息合同

我正在尝试使用带有消息合同的WCF流,因为我需要在流本身旁边添加其他参数.

基本上我正在创建一个文件上传和下载服务,顶部还有一些额外的逻辑.

不幸的是,当我尝试从浏览器点击服务以检查一切正常时,我收到以下错误:

'/'应用程序中的服务器错误.合同'IFileTransferService'中的"UploadFile"操作使用具有SOAP头的MessageContract.None MessageVersion不支持SOAP标头.

不幸的是谷歌搜索它并没有产生任何帮助我的重要结果.你们能帮助我吗?这里是服务的细节(我已经删除了下载部分,因为空间的原因).

[ServiceContract(Namespace = "http://www.acme.org/2009/04")]
public interface IFileTransferService
{
    [OperationContract(Action = "UploadFile")]
    void UploadFile(FileUploadMessage request);
}

[MessageContract]
public class FileUploadMessage
{
    [MessageHeader(MustUnderstand = true)]
    public FileMetaData Metadata { get; set; }

    [MessageBodyMember(Order = 1)]
    public Stream FileByteStream { get; set; }
}

[DataContract(Namespace = "http://schemas.acme.org/2009/04")]
public class FileMetaData
{
    [DataMember(Name="FileType", Order=0, IsRequired=true)]
    public FileTypeEnum fileType;

    [DataMember(Name="localFilename", Order=1, IsRequired=false)]
    public string localFileName;

    [DataMember(Name = "remoteFilename", Order = 2, IsRequired = false)]
    public string remoteFileName;
}
Run Code Online (Sandbox Code Playgroud)

我试图使用basichttpbinding和customhttp绑定,但效果不佳:

<customBinding> …
Run Code Online (Sandbox Code Playgroud)

.net c# wcf wcf-binding wcf-configuration

20
推荐指数
1
解决办法
2万
查看次数

标签 统计

.net ×1

c# ×1

wcf ×1

wcf-binding ×1

wcf-configuration ×1