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

C# 将对象列表从wcf服务传递到asp.net web应用程序,c#,asp.net,.net,wcf,service,C#,Asp.net,.net,Wcf,Service,我通过WCF服务在windows服务和asp.net web应用程序之间进行通信。例如:我将数据从windows服务传递到wcf服务,然后再传递到web应用程序。可以处理字符串、整数和长字符串,但我无法传递对象列表 有没有合适的方法 asp.net web应用程序 行动 Wcf服务 IService1 [运营合同] 列表GetDirectorySize(字符串路径); 服务1 公共列表GetDirectorySize(字符串路径) { 列表大小=dh.GetSize(路径); 返回大小; }

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

有没有合适的方法

asp.net web应用程序

行动

Wcf服务

IService1

[运营合同]
列表GetDirectorySize(字符串路径);
服务1

公共列表GetDirectorySize(字符串路径) { 列表大小=dh.GetSize(路径); 返回大小; }
确保您传递的类在WCF服务的接口中定义(默认为IService1.cs)。还要确保该类定义为DataContract和DataMember

比如说

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

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

[OperationContract]
List<object> GetDirectorySize(string path);
[运营合同]
列表GetDirectorySize(字符串路径);
然后将方法更改为:

public List<object> GetDirectorySize(string path)
{
    List<object> MyList = new List<object>();
    //Add items to your list...
    return MyList;
}
公共列表GetDirectorySize(字符串路径) { List MyList=新列表(); //将项目添加到您的列表。。。 返回MyList; }
我有一个wcf服务和一个作为客户端的asp.net web应用程序。我的windows服务被引用到wcf服务。然后,我从调用运行服务中的方法的web应用程序中调用wcf服务中的一个方法。能否在wcf服务中显示该方法的代码以及应用程序对此方法的调用?因此,我将在wcf服务中添加项目?@Duck-这取决于您尝试执行的操作。您只是说它可以处理字符串、整数和长整数,但不能处理列表。我假设您显示的代码引用了这个。所以我修改了它,现在它将返回一个列表。如果你解释一下你通常想做什么,我可能会提供进一步的帮助。这正是我想做的,但列表来自wcf服务中引用的windows服务。等等,我将编辑我的帖子。假设Getsize返回一个对象列表。dh.GetSize将是“我的windows服务”中的一个方法。@Duck-那么您是否试图将GetSize在windows服务中返回的对象列表返回到应用程序?为什么不直接在应用程序中引用windows服务,而不是使用WCF服务返回这些服务?因为这会在服务活动运行时产生问题。这些类在WCF服务中引用的my windows服务中定义。有没有一种简单的方法可以让他们加入wcf服务?
[DataContract]
class MyClass
{
    [DataMember]
    string MyString { get; set;}
}
[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;
}