title: How to handle different csproj
body: <p>I am working in a team of five. We are working on a C# application with five csprojects. </p>
  
  <p>The problem is that for each csproject, each of my colleagues has their own ideas on how to reference a DLL; some would like to link in by Project reference, other would like to link in the DLL only. So each and every one of us will have our own csproject. </p>
  
  <p>I want all of them to check in their csproject; but given that every copy of csproject is different, there isn't really a feasible mechanism to do that, is there? But if I don't ask them to check in their csproject, then every time they add a new file, I would have to manually edit my csproject and that's very tedious, not to mention that it beats the purpose of continuous integration. </p>
  
  <p>Is there any strategy to handle this? <strong>I know it would be best to enforce a standard, but is there any other option leaving this aside?</strong></p>
  
  <p>There is a reason why the csproject content is different for everyone; not everyone has all of the five csprojects, and not everyone <em>can</em> have all of the 5 csprojects. So invariably some will have to end up having to reference DLLs instead of projects, and some <em>want</em> to reference by projects for the ease of debugging. If I were to enforce a standard, as the answers here suggest, I would have to solve this issue.</p>
  
  <p>As to why we need to split into multiple csprojects, that's because we want to reuse some parts of the code for other applications, and because not everyone can have all access to the source code. It's more political than technological.</p>