我通过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;
}
答案 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;
}