title: Unable to find reference to assembly in a Visual Studio website
body: <p>I have a legacy WebSite project (as opposed to a Web Application project).  It was using .net 3.5 but I am updating it to 4.0.</p>
  
  <p>Due to the compilation error ...</p>
  
  <pre><code> Compiler Error Message: CS1705: Assembly 'System.Web.Mvc, Version=4.0.0.0, 
      Culture=neutral, PublicKeyToken=31bf3856ad364e35' uses 'System.Web.WebPages, 
      Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has 
      a higher version than referenced assembly 'System.Web.WebPages, 
      Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
  </code></pre>
  
  <p>... I added a reference to the newer version of System.Web.WebPages.  This added the following line to the web.config file:</p>
  
  <pre><code> &lt;add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/&gt;
  </code></pre>
  
  <p>However, when I try to build the website I get this error:</p>
  
  <pre><code> The type 'System.Web.WebPages.WebPage' exists in both 
      c:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Web.WebPages\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.dll' 
      and 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Web.WebPages\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.dll'
  </code></pre>
  
  <p>I cannot seem to find a reference anywhere in the project to the v4.0 1 version of WebPages.  I assume this means that some other assembly is probably referring to it but I'm not sure where to go from here.</p>
  
  <p>Any idea how to track down what is referring to the assembly and either remove the reference or update the calling the assembly?</p>