Генерация дозвукового кода будет считывать связи внешних ключей в таблицах и создавать необходимые вспомогательные методы в классах таблиц. Класс Northwind Product имеет отношение PrimaryKey к классу OrderDetail. Дозвуковой генерирует метод
открытый Northwind.OrderDetailCollection OrderDetails ()
, чтобы получить строки OrderDetail как коллекцию OrderDetailCollection. Это BindingList, который вы можете изменить по мере необходимости и вызвать SaveAll () для сохранения списка. Нет глубокого сохранения, поэтому сохранение Product не сохранит связанные строки OrderDetail.
[Test]
public void Demo_Product_OrderDetails()
{
Product product = new Product(3); // Read an existing row.
OrderDetailCollection orderDetails = product.OrderDetails();
Assert.IsTrue(orderDetails.Count == 12);
foreach(OrderDetail orderDetail in orderDetails)
{
orderDetail.Discount -= 0; // Do something meaningful.
}
OrderDetail newDetail = new OrderDetail();
newDetail.ProductID = 3;
newDetail.OrderID = 10248;
newDetail.UnitPrice = 7.00m;
newDetail.Discount = 0.10f;
newDetail.Quantity = 12;
orderDetails.Add(newDetail);
orderDetails.SaveAll();
orderDetails = product.OrderDetails();
Assert.IsTrue(orderDetails.Count == 13);
OrderDetail.Destroy(newDetail.OrderID);
orderDetails = product.OrderDetails();
Assert.IsTrue(orderDetails.Count == 12);
}