При разработке пользовательских исключений для .NET MSDN предоставляет эти рекомендации. В частности, в правилах указано, что настраиваемое исключение:
- должен быть сериализуемым, т.е. реализовывать
ISerializable
и быть украшен атрибутом[Serializable]
, и - должен реализовывать конструктор (де) сериализации, то есть
protected CustomException(SerializationInfo info, StreamingContext context)
.
Однако в Portable Class Library ни один из SerializableAttribute
, ISerializable
и SerializationInfo
не поддерживается.
Как мне в достаточной степени разработать настраиваемое исключение в переносимой библиотеке классов, которое одновременно нацелено на .NET Framework и одну или несколько платформ?