title: Is it possible to have two partial classes in different assemblies represent the same class?
body: <p>I have a class called 'Article' in a project called 'MyProject.Data', which acts as the data layer for my web application.</p>
  
  <p>I have a separate project called 'MyProject.Admin', which is a web-based admin system for viewing/editing the data, and was build using ASP.NET Dynamic Data.</p>
  
  <p>Basically I want to extend the Article class, using a partial class, so that I can augment one of its properties with a "UIHint" extender, which will allow me to replace the normal multi-line textbox with an FCKEdit control.</p>
  
  <p>My partial class and extender would look like this:</p>
  
  <pre><code>[MetadataType(typeof(ProjectMetaData))]
  public partial class Project
  {
  }
  
  public class ProjectMetaData
  {
      [UIHint("FCKeditor")]
      public object ItemDetails { get; set; }
  }
  </code></pre>
  
  <p>Now this all works fine if the partial class is in the same project as the original partial class - i.e. the MyProject.Data project.</p>
  
  <p>But UI behavior shouldn't sit in the Data layer, but rather, in the Admin layer. So I want to move this class to MyProject.Admin.</p>
  
  <p>However, if I do that, the functionality is lost.</p>
  
  <p>My fundamental question is: can I have 2 partial classes in separate projects, but both referring to the same "class"?</p>
  
  <p>If not, is there a way to accomplish what I'm trying to do, without mixing data-layer logic with UI logic?</p>