0
好吧,我正在構建我的WCF服務。我遇到的問題是我的代理沒有生成類型爲ListViewItem的類的代碼,甚至是我已經定義的類對象。關於類屬性類型的WCF
下面的兩個例子是我試圖通過的類。
例子#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; }
}
在第二個例子中,我很困惑,爲什麼它有一個硬的時間正好路過我司類,它已經看到。當然WCF可以傳遞你自己的自定義對象?任何幫助都非常感謝,我知道在其他平臺上爲了序列化你自己的自定義對象,你必須爲你的課程做一些特別的事情。我不確定WCF是否自動處理這個問題。
編輯
在這個任何其他幫助,仍然讚賞。
我也嘗試將以下內容添加到InvoiceCharges類中,但仍無法正確地看到代理生成。
[KnownType(typeof(ListViewItem))]
此外,這是代理的行爲。我正在使用添加服務引用來執行此操作。
看看它是如何產生它的幾個都因爲一個ListViewItem的 「InvoiceCharges」。我可以刪除它的DataMember屬性和罰款。
Divisions類是否也具有DataContract屬性? – 2012-02-22 17:20:20
是的,奇怪的是當我從自定義對象(如ListViewItem屬性和Division屬性)中刪除它有問題的[DataMember]屬性。該類在客戶端成功生成代理。 – meanbunny 2012-02-22 17:23:38
嗯,我猜ListViewItem沒有標記DataContract屬性,所以這可能是問題。由於您沒有發佈代碼,因此無法確定Divisions類。 – 2012-02-22 17:56:51