将多个复杂类型传递给WCF Rest

时间:2012-08-08 10:46:21

标签: c# wcf rest

我正在编写WCF Rest服务,我有一个功能,我需要上传文件和一些数据。

问题是,是否可以将多个复杂类型和流传递给单个WCF Rest函数?如果是,是否有人有任何好的例子?

所以例如

    [WebInvoke(Method = "POST", UriTemplate = "UploadSomething/")]
    public void UploadSomething(ComplexType ctype, DifferentType dtype, Stream fileContent)
    {

    }

1 个答案:

答案 0 :(得分:0)

当您将Stream作为参数时,您无法传递另一个参数。您可以创建一个复杂类型,其中包含其他复杂类型以及可用于上载文件的内存流参数。

前:

public class UploadObject
{
    public ComplexType cType {get;set;}
    public DifferentType dType {get;set;}
    public MemoryStream fileStream {get;set;}
}

现在在您的服务中使用它,如下所示:

[WebInvoke(Method = "POST", UriTemplate = "UploadSomething/")]
public void UploadSomething(UploadObject uploadObj)
{

}