17
爲.NET設計自定義異常時,MSDN提供了these guidelines。特別是,指南指出,一個自定義異常:在可移植類庫中實現自定義異常
- 應該是可序列化,即實現
ISerializable
並與[Serializable]
屬性裝飾, - 應該實現(反)序列化的構造,即
protected CustomException(SerializationInfo info, StreamingContext context)
。
然而,在Portable Class Library的SerializableAttribute
,ISerializable
和SerializationInfo
既不支持。
我應該如何在可移植類庫中充分設計自定義異常,該類同時針對.NET Framework和一個或多個平臺?
非常感謝澄清,馬克。我懷疑是這種情況(例如,該指南並未針對.NET 4.5進行更新),但感覺更確保從可靠來源獲得確認。 –
@Anders我在「社區內容」部分添加了一些註釋 - 它們可能在某個時候出現。 –
儘管如此,其中的一些仍在運行時執行。例如,如果您嘗試將某些內容添加到Exception.Data集合中,它將在整個Framework上引發異常,但不會在Silverlight上引發異常。 –