Что такое поле _xcode типа исключения .NET? - PullRequest
4 голосов
/ 20 декабря 2009

В моих модульных тестах мне нужно выполнить тесты глубокого равенства двух объектов, которые, как ожидается, будут идентичными. Во время тестов я обнаружил некоторые интересные поля в типах систем, которые нарушают мой код. Exception._xcode является самым последним. Вот несколько фактов об этом поле:

  1. Инициализируется до -532459699 во всех конструкторах Exception, кроме пользовательского конструктора десериализации, где он просто никогда не упоминается (спасибо Reflector).
  2. Не помечен атрибутом NonSerialized.

Учитывая эти факты, поле сбрасывается в 0 после десериализации объекта Exception, что, безусловно, отличается от того, что установлено в конструкторах.

Мне интересно, в чем смысл этого поля?

Спасибо.

1 Ответ

1 голос
/ 20 декабря 2009

Это поле используется для хранения кодов исключений COM +, и его значение присваивается константе _COMPlusExceptionCode.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...