title: How can you find which .NET project reference is transitively loading another assembly?
body: <p>I've got a project that I'm trying to deploy to another PC, but the installation fails because it requires an assembly to have been installed in the GAC. But that assembly (System.ServiceModel.DomainServices.Hosting 4.0.0.0) has no relevance to my project so I'm trying to remove both it and the direct reference that loads it.</p>
  
  <p>My project <em>--directly depends on--></em>  <strong>Unknown reference</strong>  <em>--indirectly depends on--></em>  System.ServiceModel.DomainServices.Hosting 4.0.0.0</p>
  
  <p>How can I find out which of the direct references in my project is indirectly loading this useless DomainServices assembly? I can't see a way to do it using reflection...</p>
  
  <p>(This is a general question, but if it helps I'm using C# on .NET 4.0, Visual Studio 2010, and ClickOnce to deploy the project.)</p>