title: Transactional batch processing with OData
body: <p>Working with Web API OData, I have $batch processing working, however, the persistence to the database is not Transactional.  If I include multiple requests in a Changeset in my request, and one of those items fails, the other still completes, because each separate call to the controller has it's own DbContext.  </p>
  
  <p>for example, if I submit a Batch with two change sets:</p>
  
  <p>Batch 1
   - ChangeSet 1
   - - Patch valid object
   - - Patch invalid object
   - End Changeset 1
   - ChangeSet 2
   - - Insert Valid Object
   - End ChangeSet 2
  End Batch</p>
  
  <p>I would expect that the first valid patch would be rolled back, as the change set could not be completed in its entirety, however, since each call gets its own DbContext, the first Patch is committed, the second is not, and the insert is committed.</p>
  
  <p>Is there a standard way to support transactions through a $batch request with OData?  </p>