我有關於XML類的反序列化的問題。我需要爲IList使用代理,因爲XML不會在接口上序列化/反序列化。我需要使用這個代理,因爲NHibernate不接受列表並只接受接口。我的問題只是在反序列化時。 序列化工作正常。Xml使用代理的反序列化
public class EmailCategory
{
[XmlAttribute("Id")]
public virtual long Id { get; set; }
[XmlAttribute("Name")]
public virtual string Name { get; set; }
protected internal virtual IList<EmailBranch> EmailBranches { get; set; }
[XmlArray("EmailBranches")]
[XmlArrayItem("EmailBranch", typeof(EmailBranch)]
public List<EmailBranch> EmailBranchesProxy {
get { return EmailBranches != null ? EmailBranches .ToList() : null; }
set { EmailBranches = value; }
}
}
爲什麼不創建Data Contract/DTO類,然後使用automapper或手動映射代碼?通常認爲使用數據庫對象的做法很糟糕,就像您正在嘗試的那樣。 – Alistair
我已編輯您的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –