I have a Class Library that has an AssemblyVersion of 1.0.0.0 and has to keep it even when it's updated (SharePoint...).
So I'm using the AssemblyFileVersion as the "real" version.
Now, I want to setup a Symbol Server and I wonder if it's actually po开发者_如何学Gossible to have multiple PDBs for the same AssemblyVersion and have it automagically work?
PublicKeyToken is also the same always, so no way to differentiate there.
Yes. The SymbolServer key is based on the timestamp and file size of the corresponding DLL when first generated - this key is stored within both the DLL itself, and the PDB, so each build will (excluding unfortunate accidents and contrived scenarios) have a unique ID associated with it.
Of course, you can verify this easily enough: just make two builds (don't even change the source code...) and symstore the results - you should be able to see the two separate PDBs stored.
The up-side of this is that you don't have to worry about unique assembly versions. And of course, the down-side is you have your work cut out for you if you accidentally lose the PDBs for a build you've already sent out...
See also:
Microsoft Symbol Server / Local Cache Hash Algorithm
精彩评论