我在这里遇到一些情况。我需要将具有属性的对象传递给WCF服务,该属性是另一个对象的List。两个对象都在WCF服务中定义。 我在这里遇到两个问题:
1-客户端
中无法使用这两个对象中的任何一个的自定义构造函数2-列表<>我可以在客户端作为数组使用,不要让我添加任何内容以便以后传回服务器
非常感谢任何帮助
WCF代码:
[Serializable]
[DataContract]
public class PCParamResultEntity
{
#region Properties
[DataMember]
public string SpecName { get; set; }
[DataMember]
public string SpecValue { get; set; }
[DataMember]
public string Grade { get; set; }
#endregion
#region Constructors
public PCParamResultEntity(string specName, string specValue, string grade)
{
SpecName = specName;
SpecValue = specValue;
Grade = grade;
}
#endregion
}
[Serializable]
[DataContract]
public class PCCheckResultEntity
{
#region Properties
[DataMember]
public string GlobalResult { get; set; }
[DataMember]
public List<PCParamResultEntity> Results { get; set; }
#endregion
#region Constructors
public PCCheckResultEntity(string globalResult, List<PCParamResultEntity> results)
{
GlobalResult = globalResult;
Results = results;
}
#endregion
}
客户代码:
PCCheckResultEntity result = new PCCheckResultEntity();
result.GlobalResult = pcCheckresult.GlobalResult;
foreach (PCParamResult param in pcCheckresult.Results)
{
string paramGrade = param.Grade;
PCParamResultEntity resultEntity = new PCParamResultEntity();
resultEntity.SpecName = param.SpecName;
resultEntity.SpecValue = param.SpecValue;
resultEntity.Grade = paramGrade;
result.Results.????
}
return result;
答案 0 :(得分:1)
Collection(和List)非常特定于.Net,WCF不会将其暴露给服务的元数据。 WCF为收集提供专用的编组规则。集合将作为服务元数据中的数组公开。
如果您使用AddServiceReference,请单击“高级”并选择“#34;集合类型&#34;并指定Generic.List。