Я начал с запуска самой старой VS, к которой у меня есть доступ (VS2017 ) и получение кода для сборки. Теперь я пытаюсь декомпилировать рабочий код и сравнить его с моим локально созданным кодом.
Я обнаружил, что это на 95% декомпилированный код. Именно эти последние 5% мне и хотелось бы понять.
Я использую dotPeek, и бывают случаи, когда кажется, что декомпиляция приводит к очень похожему коду, но немного другому синтаксису. Например:
- Случайные методы отображаются как переопределение или виртуальные
- Одно сравнение пользовательских объектов использует ==, а другое использует пользовательский метод равенства.
- Одно использует краткий встроенный синтаксис, а другое — раздутый 7-строчный синтаксис. версия, которая КАЖЕТСЯ одинаковой
- У одной есть явное (ненужное) приведение типа, а другой нет.
- Имена локальных переменных немного отличаются (против `dictionary1')
Код: Выделить всё
dictionary
Подробнее здесь: https://stackoverflow.com/questions/792 ... -for-diffs