使用MessageContract时,WCF客户端语法与服务语法不同

时间:2014-03-31 07:13:09

标签: c# visual-studio-2010 wcf

我有一项使用MessageContract

的服务

客户端的语法更改。我不知道为什么。我使用的是Visual Studio 2010,目标框架是4.0

这是我的MessageContract:

[MessageContract]
public class DownloadRequest
{
    [MessageBodyMember]
    public string FileName;
}

[MessageContract]
   public class RemoteFileInfo : IDisposable
{
    [MessageHeader(MustUnderstand = true)]
    public string FileName;

    [MessageHeader(MustUnderstand = true)]
    public long Length;

    [MessageBodyMember(Order = 1)]
    public System.IO.Stream FileByteStream;

    public void Dispose()
    {
        if (FileByteStream != null)
        {
            FileByteStream.Close();
            FileByteStream = null;
        }
    }
}

我的服务合同有:

[OperationContract]
        RemoteFileInfo DownloadFile(DownloadRequest request);

并且暗示:

public RemoteFileInfo DownloadFile(DownloadRequest request)
{
    RemoteFileInfo result = new RemoteFileInfo();
      .........
      ....
    return result;

}

我正在关注错误。

Wcf client Error

任何想法?

编辑: 我使用基本的http绑定与流

1 个答案:

答案 0 :(得分:0)

从错误消息中,您似乎需要再次刷新服务引用。 在visual studio中,单击菜单Project - >选择'添加服务参考...'。