title: Unique Assembly name every build
body: <p>I’m trying to change the Assembly name of my dll during build. I’ve created another exe that changes the assembly name in the csproj file, which I execute during pre-build. But it seems like my changes to the csproj file only take effect after the build has finished, which is of course not what I want.</p>
  
  <p>The assembly name has to be unique every time it gets built, so I create it by appending a GUID.</p>
  
  <pre><code>var xmlDoc = XDocument.Load(projectFile);
  XNamespace ns = "http://schemas.microsoft.com/developer/msbuild/2003";
  string newAssemblyName = originalAssemblyName + "_" + Guid.NewGuid().ToString("N");
  
  xmlDoc.Element(ns + "Project").Element(ns + "PropertyGroup").Element(ns + "AssemblyName").Value = newAssemblyName;
  
  xmlDoc.Save(projectFile);
  </code></pre>
  
  <p>I was wondering if there is maybe a way to ‘force’ reload the csproj during pre-build or if there is another way I could get a unique assembly name everytime I build my solution. </p>