title: CSharpCodeProvider compile exception
body: <p>My program often compile c#-code and sometimes i got a ArgumentException like "The file name 'C:\Users--\AppData\Local\Temp\wvpc3m5m.0.cs' was already in the collection. Parameter name: fileName".</p>
  
  <p>Settings of compiler is next:</p>
  
  <pre><code>public void Init()
  {
      this.compilerParameters = new CompilerParameters
      {
          GenerateExecutable = false,
          GenerateInMemory = true
      };
  }
  </code></pre>
  
  <p>Compilation:</p>
  
  <pre><code>public CompilerResults Compile(String code)
  {
      CompilerResults result = this.codeProvider
          .CompileAssemblyFromSource(this.compilerParameters, code);
  
      return result;
  }
  </code></pre>
  
  <p>I think that the codeProvider write passed string into a file, and sometimes he try to write in one and the same file twice.</p>