Как Visual Studio узнает, соответствует ли исходный файл оригинальной версии?
Я понял, как .dll сборки .NET файл отображается в .pdb с помощью GUID (блог). Когда я отлаживаю в сборке и запрашиваю исходный код, если я перехожу к файлу, он может сказать мне, что исходный код отличается от исходного. Откуда он это знает? Я ожидал, что файл .pdb будет содержать контрольную сумму для каждого файла, но это не такПохоже, что. Лучший инструмент, который я нашел для выгрузки отладочной информации:dia2dump, Файлы C ++ .pdb содержали записи MD5, а файлы C # .pdb - нет.
Дамп C ++
dia2dump -f dia2dump.pdb> dia2dump.pdb.files.txt
C # dump
dia2dump -f Autofac.pdb> Autofac.pdb.files.txt
dia2dump -all Autofac.pdb> Autofac.pdb.all.txt
Есть ли что-то, что я пропустил в "все" свалка?
Это должно быть использование контрольной суммы. Если я изменю один символ в Module.cs, я получу:
Где я могу найти контрольную сумму для исходного файла, на который есть ссылка в .pdb?