2009-05-08 14 views
1
  • サブソニックにその関係(外部キーのみ、または他の方法も)を伝える方法は何ですか?
  • 私は(例えば)関連チームメンバーサブソニックの「1対多数」リレーションシップの使い方

    とチームのオブジェクトを使用している場合**どのように私はアクセスし、チーム

    からチームメンバーを更新します**は、どのように私は、チームメンバーを更新していますか?チームオブジェクトを保存するとチームメンバーの変更が保存されますか

    **メンバーにチームを追加するにはどうすればよいですか?新しいメンバーを作成し、チームIDを外部キーに割り当てて保存しますか?以上のオブジェクト指向の方法(例えばteam.Add(teamMember))

答えて

3

亜音速コード生成テーブルの外部キー関係を読み取り、テーブルクラスで必要なヘルパーメソッドを作成しますがあります。 Northwind Productクラスには、OrderDetailクラスとのPrimaryKey関係があります。亜音速はOrderDetailCollectionとしてOrderDetail行を取得する()メソッドを

公共Northwind.OrderDetailCollectionのたOrderDetailsを生成します。これは必要に応じて変更できるBindingListで、SaveAll()を呼び出してリストを保存します。詳細な保存はないため、製品を保存しても、関連する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); 

} 
+2

SubSonicでこれを行う唯一の方法は外部キーの関係ですか?命名規則はありますか? – BuddyJoe

関連する問題