示例#1
0
        public async Task PertTest1_Upd()
        {
            System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();
            int nb = 0;

            Nglib.CONNECTOR.IDataConnector connector = new Nglib.CONNECTOR.DataConnectorDefault();
            connector.SetConnectionString(Nglib.CONNECTOR.ConnectorTests.TestConnectionString, "Npgsql");
            try
            {
                connector.Open(true);
                System.Data.Common.DbConnection connect = (System.Data.Common.DbConnection)connector.GetDbConnection();

                watch.Start();

                TestEfContext db = new TestEfContext(connect);
                //var tlist = db.Tests.ToListAsync();


                List <TestClass> listtest = await db.Tests.ToListAsync <TestClass>();

                nb = listtest.Count;
                int i = 0;

                foreach (TestClass item in listtest.Take(100))
                {
                    TestClass item2 = await db.Tests.FirstAsync(g => g.testid == 6);

                    item.pseudo = "tesperf_ef_" + i.ToString();
                    //db.SaveChanges();
                    i++;
                }


                db.Tests.Add(new TestClass()
                {
                    pseudo = "toti"
                });
                db.SaveChanges();

                watch.Stop();
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                connector.Close();
            }
            Console.WriteLine(string.Format("elapsed:{0}ms - nb:{1}", watch.ElapsedMilliseconds, nb));
        }
        public async Task ShouldSaveWhenUsingBulkSaveChanges()
        {
            using (var _db = new TestEfContext())
            {
                _db.MainEntitites.Add(_data);
                await _db.BulkSaveChangesAsync();
            }

            using (var _db = new TestEfContext())
            {
                var created = await _db.MainEntitites
                              .Where(x => x.TestRound == _testRound)
                              .Include(x => x.Secondaries)
                              .SingleOrDefaultAsync();

                Assert.IsNotNull(created);
                Assert.AreEqual(_data.Secondaries.Count, created.Secondaries.Count);
            }
        }
示例#3
0
 public TestRepository(TestEfContext context)
     : base(context)
 {
 }