title: Why cant partial methods be public if the implementation is in the same assembly?
body: <p>According to <a href="http://msdn.microsoft.com/en-us/library/wa80x488.aspx" rel="noreferrer">MSDN Documentation</a> for partial classes :</p>
  
  <blockquote>
    <p>Partial methods are implicitly private</p>
  </blockquote>
  
  <p>So you can have this</p>
  
  <pre><code>// Definition in file1.cs
  partial void Method1();
  
  // Implementation in file2.cs
  partial void Method1()
  {
    // method body
  }
  </code></pre>
  
  <p>But you can't have this</p>
  
  <pre><code>// Definition in file1.cs
  public partial void Method1();
  
  // Implementation in file2.cs
  public partial void Method1()
  {
    // method body
  }
  </code></pre>
  
  <p>But why is this? Is there some reason the compiler can't handle public partial methods?</p>