コード例 #1
0
        public void CanUpdatePrimaryBankAccount()
        {
            BankAccountPortfolio portfolio;
            ISession             session = SessionFactory.Create();

            using (var tran = session.BeginTransaction())
            {
                portfolio = new BankAccountPortfolio();
                BankAccount firstBankAccount = portfolio.AddBankAccount("First-0123456789");

                session.Save(portfolio);

                tran.Commit();

                Assert.AreEqual(portfolio.PrimaryBankAccountSplit.BankAccount, firstBankAccount);
            }

            BankAccount secondBankAccount;

            using (var tran = session.BeginTransaction())
            {
                BankAccountPortfolio bankAccountPortfolio = session.Get <BankAccountPortfolio>(portfolio.Id);
                secondBankAccount = bankAccountPortfolio.AddBankAccount("Second-9876543210");

                tran.Commit();
            }

            using (var tran = session.BeginTransaction())
            {
                BankAccountPortfolio bankAccountPortfolio = session.Get <BankAccountPortfolio>(portfolio.Id);
                bankAccountPortfolio.ChangePrimaryBankAccount(secondBankAccount.Id);

                tran.Commit();
            }

            using (var tran = session.BeginTransaction())
            {
                BankAccountPortfolio bankAccountPortfolio = session.Get <BankAccountPortfolio>(portfolio.Id);
                Assert.AreEqual(bankAccountPortfolio.PrimaryBankAccountSplit.BankAccount, secondBankAccount);
                tran.Commit();
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: iampez/BankAccountModel
        static void Main(string[] args)
        {
            Guid bankAccountPortfolioId;
            Guid bankAccountId;

            ISession session = SessionFactory.Create();

            using (var tran = session.BeginTransaction())
            {
                BankAccountPortfolio portfolio = new BankAccountPortfolio();
                portfolio.AddBankAccount("0123456789");

                session.Save(portfolio);
                bankAccountPortfolioId = portfolio.Id;

                tran.Commit();
            }

            using (var tran = session.BeginTransaction())
            {
                BankAccountPortfolio bankAccountPortfolio = session.Get <BankAccountPortfolio>(bankAccountPortfolioId);
                bankAccountPortfolio.AddBankAccount("9876543210");

                tran.Commit();

                bankAccountId = bankAccountPortfolio.BankAccountSplits
                                .Single(x => x.BankAccount.AccountNumber == "9876543210").BankAccount.Id;
            }

            using (var tran = session.BeginTransaction())
            {
                BankAccountPortfolio bankAccountPortfolio = session.Get <BankAccountPortfolio>(bankAccountPortfolioId);
                bankAccountPortfolio.ChangePrimaryBankAccount(bankAccountId);

                tran.Commit();
            }
        }