title: c# Class Names - Convention on how to name classes
body: <blockquote>
    <p><strong>Possible Duplicate:</strong><br>
    <a href="https://stackoverflow.com/questions/1760449/conventions-c-class-names">(Conventions) C# Class names</a>  </p>
  </blockquote>
  
  
  
  <p>I use Entity framework (or even with Nhibernate or linq to sql) you usually have a series of entity classes that get passed around a solution. I usually, have these classes in a VS Project called [SolutionName].Data</p>
  
  <p>At some stage these will be used by another class which might carryout some business logic prior to saving and deleting them. In this situation I then have these action classes in a project called [SolutionName].Core</p>
  
  <p>I have seen some developers suffix these classes with Logic or Manager e.g. RegistrationManager which would then have a Save(), Delete(), Update(). A prime example of this is the open source NopCommerce.</p>
  
  <p>Some put them into a  folder called Bll but leave the name unchanged e.g. the namespace would be [SolutionName].Core.Bll with a class in that called Registration. They would then reply on the namespace distinguishing whether this is a database entity or a business logic class.</p>
  
  <p>The question is how should I be naming classes? Should I just suffix everything with Logic/Manager/Service or is there a better solution?</p>