2013-01-24 5 views
0

저는 C# 클래스 라이브러리와 지불 모델이있는 엔티티 프레임 워크를 보유하고 있습니다. 첫 번째는 IdSeller이있는 경우처럼이 마지막 하나는 첫 번째의 고체 값을 저장,엔티티 프레임 워크의 첫 번째에 따라 두 번째 엔티티 두 개를 만듭니다.

내 지불 모델은 하나 개의 테이블이 Payment라고해야하고 다른 테이블이 PaymentSolid라고, 다음 두번째 버텍스는 SellerName 있습니다.

제 질문은 제가 Payment 엔티티와 PaymentSolid을 생성하는 NewPayment이라는 메서드가 있습니다.

Payment ret; 
     using (var context = new MyEntities()) 
     { 
      ret = new Payment 
      { 
       id_buyer = IdBuyer, 
       id_seller = IdSeller, 
       id_seller_bill_to = IdSellerBillTo, 
       id_payment_method = IdPaymentMethod, 
       creation_date = CreationDate, 
       payment_status = PaymentStatus, 
       notes = Notes 
      }; 
      context.Payments.AddObject(ret); 
      context.Refresh(RefreshMode.StoreWins, ret); 
      var retSolid = new PaymentSolid { 
       buyer_name = ret.Buyer.ProviderName, 
       seller_name = ret.Seller.ProviderName, 
       seller_bill_to_name = ret.SellerBillTo != null ? ret.SellerBillTo.ProviderName : null, 
       payment_method_name = ret.PaymentMethod.name 
      }; 
      ret.PaymentSolid = retSolid; 
      context.SaveChanges(); 
      context.Refresh(RefreshMode.StoreWins, ret); 
     } 
     return ret; 
    } 

을 그리고 난이 고체를 만들 ret.Buyer.ProviderName를 사용할 수 있는지 제 질문은 나 난 후, 고체를 만들 수있는 Payment 첫째을 저장해야하는 경우 : 내 방법의 다음 코드가 있습니다.

답변

0

id_buyer을 사용하여 PaymentBuyer 사이의 관계를 만들려면 ret을 먼저 저장해야합니다.

+0

내가 생각했던 것 ... 나는 그것을 시도 할 것이다. –