Example #1
0
 private void InsertSimple(BikData data)
 {
     foreach (var item in data.BICDirectoryEntry)
     {
         int id = InsertBIC(item);
         InsertAccounts(id, item.Accounts);
         InsertParticipantInfo(id, item.ParticipantInfo);
     }
 }
Example #2
0
        public bool Save(BikData data)
        {
            Clear();

            // В этом варианте Упала производительность )
            //InsertSimple();

            Insert(data);

            return(true);
        }
Example #3
0
        private void Insert(BikData data)
        {
            using (var connection = new SqlConnection(ConnectionString))
            {
                DapperPlusManager.Entity <BICDirectoryEntry>().Table("BICDirectoryEntry").Identity(x => x.Id);
                DapperPlusManager.Entity <ParticipantInfo>().Table("ParticipantInfo").Identity(x => x.Id);
                DapperPlusManager.Entity <Accounts>().Table("Accounts").Identity(x => x.Id);

                connection.BulkInsert(data.BICDirectoryEntry)
                .Include(b => b.ThenForEach(x => x.ParticipantInfo.BICDirectoryEntryId = x.Id)
                         .ThenBulkInsert(x => x.ParticipantInfo))
                .Include(a => a.ThenForEach(c => c.Accounts.ForEach(v => v.BICDirectoryEntryId = c.Id)).ThenBulkInsert(x => x.Accounts));
            }
        }