将对象列表从wcf服务传递到asp.net Web应用程序

时间:2016-01-04 13:10:58

标签: c# asp.net .net wcf service

我通过WCF服务在Windows服务和asp.net Web应用程序之间进行通信。例如:我将数据从Windows服务传递到wcf服务,然后传递到Web应用程序。使用字符串,整数和长整数,但我无法传递对象列表。

有没有正确的方法呢?

asp.net网络应用

动作

WcfService.ServiceClient1 client = new WcfService.ServiceClient1("BasicHttpBinding_IService1");
ViewBag.s  = client.GetDiretorySize("something").ToString();

Wcf服务

IService1

[OperationContract]
List<Objects> GetDirectorySize(string path);

服务1

public List<Objects> GetDirectorySize(string path)
{
    List<Objects> size = dh.GetSize(path);
    return size;
}

2 个答案:

答案 0 :(得分:0)

确保您传递的类在WCF服务的接口(默认IService1.cs)中定义。还要确保将类定义为DataContract和DataMember

例如

[DataContract]
class MyClass
{
    [DataMember]
    string MyString { get; set;}
}

答案 1 :(得分:0)

从你的问题中不清楚你是否尝试过这个但是试一试:

[OperationContract]
List<object> GetDirectorySize(string path);

然后将方法更改为:

public List<object> GetDirectorySize(string path)
{
    List<object> MyList = new List<object>();
    //Add items to your list...
    return MyList;
}