title: Mapping a Private Field in NHibernate (with Fluent NH)
body: <p>I'd like to know, How Could I map (with fluent nhibernate) this model:</p>
  
  <pre><code>public class Category
  {
     private IList&lt;Product&gt; _products;
     public IEnumerable&lt;Product&gt; Products {
         get { return _products; }
     }
     /* others properties */   
  
  
     public Category() {
         _products = new List&lt;Product&gt;();
     }
  
  
     // to add a product i'd use something like this:
     public void AddProducts(Product product) {
        product.Category = this;
        _products.Add(products);
     }
  }
  </code></pre>
  
  <p>Today, I'm using a property of IList, but I don't want to expose the methods like "Add", "Remove", etc...  on my property, So I think to expose a simple property of IEnumerable and encapsulate an IList like a private field!</p>
  
  <p>So, Is it a good pratice ? How could I map it using NHibernate?</p>
  
  <p>Thanks</p>
  
  <p>Cheers</p>