title: Flushing in NHibernate
body: <p>This question is a bit of a dupe, but I still don't understand the best way to handle flushing.</p>
  
  <p>I am migrating an existing code base, which contains a lot of code like the following:</p>
  
  <pre><code>private void btnSave_Click()
  {
       SaveForm();
       ReloadList();
  }
  
  private void SaveForm()
  {
      var foo = FooRepository.Get(_editingFooId);
  
      foo.Name = txtName.Text;
  
      FooRepository.Save(foo);
  }
  
  private void ReloadList()
  {
       fooRepeater.DataSource = FooRepository.LoadAll();
       fooRepeater.DataBind();
  }
  </code></pre>
  
  <p>Now that I am changing the FooRepository to Nhibernate, what should I use for the FooRepository.Save method? Should the FooRepository always flush the session when the entity is saved?</p>