我正在開發一個項目,我想通過Web服務從數據庫中發送一個實體。如何序列化生成的類?
我把這作爲我的數據合同。
[DataContract]
public class CreateAlumniRequest
{
[DataMember]
public List<Alum.Data.EmploymentHistory> lstEmploymentHistory;
}
但是,我不斷收到此錯誤。
類型 'Alum.Data.Base.EmploymentHistoryBase' 無法序列。請考慮使用DataContractAttribute 屬性標記 ,並使用 DataMemberAttribute屬性標記要與其序列化的所有成員 成員。如果 類型是一個集合,請考慮將其與 CollectionDataDataContractAttribute標記爲 。
這告訴我我可能需要去EmploymentHistory類並將其標記爲DataContract。
問題是EmploymentHistory是由一個內部ORM工具生成的 - 我無法真正對其進行任何更改。
是否有可能在不添加該屬性的情況下序列化EmploymentHistory?
有沒有其他解決方案?我能想到的唯一辦法是在可序列化的類中重新創建EmploymentHistory並手動映射對象,這聽起來像很多重複。
這可能是我必須要做的。我只是不喜歡這樣一個事實,即如果EmploymentHistory發生變化,我將不得不記住重新映射變量。 – Diskdrive 2011-03-03 03:59:48