title: When should we not create Assembly's strong name? What are the disadvantages of "strong named assembly"?
body: <p>I have a project, i.e. <code>library.exe</code>. In this I have referenced an assembly (<code>logging.dll</code> ver 1.0.3.0) and I have given this assembly a strong name.</p>
  
  <p>Now suppose I changed a method in <code>logging.dll</code> and made version 1.0.4.0.</p>
  
  <p>Now when I copy/replaced the old DLL with this new one I got an exception. 
  I know that exception is because I have changed version number of the DLL. As it was a strong name DLL it's not allowed unless I rebuilt <code>library.exe</code>.</p>
  
  <p>What I want to say with above story is</p>
  
  <ol>
  <li>Use strong name with assembly only when we have to add it to GAC.</li>
  <li>If we have an application where individual assemblies requires updating do not use strong named assemblies.</li>
  </ol>
  
  <p>Am I correct with point 1 and 2?</p>
  
  <p>When should strong named assemblies not be used? </p>
  
  <p>What are the disadvantages of "strong named assembly"?</p>