How can we help you today? How can we help you today?

Build 451 - References changed in project file

In my projects I am using third-party controls. Since they release development builds about every week, I have the reference in the .csproj as
<Reference Include="foo" />

so I don't have to change all the references everytime I install the new version (with a different version number). However, if I set Reflector to decompile the reference, it then replaces the reference with
<Reference Include="foo, Version=xxx, Culture=neutral, PublicKeyToken=xxx, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\..\Windows\assembly\xxx</HintPath>
</Reference>

So after every such run I have to clean up the references again (this is simplified since I have everything under version control and can simply revert, but annoying none the less).
DanielRose
0

Comments

3 comments

  • Alex D
    Hi Daniel,
    Thanks a lot for that report, that's an important problem you've found. In case you're interested, it's because we have to create a new version of the reference with a debugger signature added. We then temporarily change your project to point to the regenerated version eg:
    <Reference Include="foo, Version=xxx, Culture=neutral, PublicKeyToken=null, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Users\alex.davies\AppData\Local\Red Gate\.NET Reflector 6\Cache\Regenerated\ACCC3328A4261F2CAFECDCE6E0585F70</HintPath>
    </Reference>
    
    during debugging so that debugging works.

    We then do our best to put it back how it was before. Up til now, we thought that we would always leave it at least equivalent to before (not necessarily the same). But I understand how pointing to the same dll isn't enough.

    I'll look into it, and hopefully it'll be possible to fix without sacrificing the ease of use we have at the moment.

    Cheers,[/b]
    Alex D
    0
  • DanielRose
    Hi Alex,

    Thanks for the quick reply. My referenced Dll is in the GAC, so at least the hint path is not necessary. Also, with the new hint path being a relative path, it is dependent on the file structure on the machine, which could be different on another developer's machine.
    DanielRose
    0
  • Alex D
    I'm not too worried about adding erroneous hint paths when your assembly is in the GAC, as they are ignored and overridden by the GAC anyway. Addin the version number is far more important.

    Cheers,
    Alex D
    0

Add comment

Please sign in to leave a comment.