title: Are a series of row updates atomic (L2S data context)? If not, how can I make them so?
body: <p>I have a Save() method that saved rows using a Linq2Sql DataContext.</p>
  
  <pre><code>    private void Save(object sender, EventArgs e)
      {
          Validate();
          selectNumUnitsByPidCdCostRevBindingSource.EndEdit();
          var db = new AccountingDataClassesDataContext(true);
          unitCountDataSet
              .GetChanges(DataRowState.Modified).Tables[0].Rows
              .Cast&lt;EomApp1.Formss.Accounting.Data.UnitCountDataSet.SelectNumUnitsByPidCdCostRevRow&gt;().ToList()
              .ForEach(row =&gt;
              {
                  db.Items.First(item =&gt; item.id == row.id).num_units = row.num_units;
              });
          db.SubmitChanges();
          Fill();
      }
  </code></pre>
  
  <p>This is the first time I've ever really wanted to ensure multiple updates occurred as a single batch (all or nothing) - and I'm just not sure if result of SubmitChanges() will be so.</p>
  
  <p>If the answer is no, then what is the way to put this into a transaction?</p>