0

私はC#のクラスライブラリと支払いモデルを持つエンティティフレームワークを持っています。

私の支払いモデルには、と呼ばれる1つのテーブルがPaymentあり、次に、と呼ばれる別のテーブルがあります。この最後のテーブルは、最初のテーブルが、、2番目のテーブルPaymentSolidがのように、最初のテーブルのソリッド値を保存します。IdSellerSellerName

私の質問は、エンティティとをNewPayment作成する場所と呼ばれるメソッドがあるということです。メソッドに次のコードがあります:PaymentPaymentSolid

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

4

1 に答える 1

0

id_buyerと の間の関係を作成するためにを使用している場合は、最初に保存する必要がPaymentありBuyerます。ret

于 2013-01-24T20:54:24.727 に答える