The following snippet does not run correctly:
OrderCollection Orders = _Dal.GetAllOrders();
if (Orders.Count == 0) return;
Order order = Orders[0];
Customer customer = new Customer();
order.Customers.Add(customer);
System.Diagnostics.Debug.WriteLine("before rejectchanges order.Customers.Count " + order.Customers.Count);
Orders.RejectChanges();
System.Diagnostics.Debug.WriteLine("after rejectchanges order.Customers.Count " + Orders[0].Customers.Count);
Before the RejectChanges the order.Customers.Count = 1
After the RejectChanges the order.Customers.Count = 1