Предупреждение о производных от классов исключений :CA2237 :Отметьте типы ISerializable с помощью SerializableAttribute

Я получил несколько классов из различных исключений. Теперь VS выдает предупреждение, как в заголовке этого вопроса.

  1. Может ли кто-нибудь объяснить, каковы последствия подавления этого правила?

  2. Не могли бы вы объяснить правило из здесь , в котором говорится «Не подавляйте предупреждение из этого правила для классов исключений, потому что они должны быть сериализуемыми для правильной работы в доменах приложений». ?

P.S. Что ж, у меня самого есть ответ. Вы действительно должны помечать исключения как сериализуемые.Они отлично работают без этого атрибута в том же AppDomain. Однако, если вы попытаетесь перехватить его из какого-либо другого домена, его придется сериализовать, чтобы выйти за границы приложения. И это главная причина, которую я нашел для этого.

11
задан phuclv 16 April 2019 в 08:23
поделиться