好的,所以我正在构建我的 WCF 服务。我的代理没有为具有 ListViewItem 等类型的类甚至我已经定义的类对象生成代码时遇到问题。
下面的两个示例是我试图通过的类。
示例 #1
[DataContract]
public class InvoiceCharges {
#region Property...
private int _invoiceChargeID;
private ListViewItem _listViewItem;
[DataMember]
public int InvoiceChargeID {
get { return _invoiceChargeID; }
set { _invoiceChargeID = value; }
}
[DataMember]
public ListViewItem ListViewItem {
get { return _listViewItem; }
set { _listViewItem = value; }
}
#endregion
示例 #2
[DataContract]
public class Users {
#region Properties...
private int _userID;
private Divisions _Division = new Divisions();
[DataMember]
public int UserID {
get { return _userID; }
set { _userID = value; }
}
[DataMember]
public Divisions Division {
get { return _Division; }
set { _Division = value; }
}
在第二个示例中,我很困惑为什么很难通过它已经看到的我的 Division 课程。WCF 肯定可以传递您自己的自定义对象吗?非常感谢任何帮助,我知道在其他平台上,为了序列化您自己的自定义对象,您必须对您的班级做一些特别的事情。我不确定 WCF 是否自动处理了这个问题。
编辑
对此的任何其他帮助仍然表示赞赏。
我还尝试将以下内容添加到 InvoiceCharges 类,但仍然无法看到代理正确生成。
[KnownType(typeof(ListViewItem))]
此外,这是代理的行为。我正在使用添加服务引用来执行此操作。
看看它是如何生成几个“InvoiceCharges”的,这都是因为那个 ListViewItem。我可以删除它的 DataMember 属性,它很好。