private void DBTransactionCommitTest() { ClearDapperCompisiteKeyEntity(); var result = helper.ExecuteSQL <object>(@"DROP TABLE IF EXISTS dapper_compisite_key", command => { helper.CreateDataBaseIfNoExist("test"); helper.CreateTableIfNoExist(new[] { "dapper_compisite_key" }); var dapperRuntime = this.GetDapperRuntime(); var workContext = this.MockWorkContext(dapperRuntime); var dapperRepository = this.GetRepository <DapperCompisiteKeyEntity>(workContext); var id = 1; #region 类对象 var entity = new DapperCompisiteKeyEntity { products_id = id + 1, language_id = id + 1, products_name = (id + 1).ToString(), products_description = (id + 1).ToString(), products_short_description = (id + 1).ToString(), products_url = (id + 1).ToString(), products_viewed = id + 1 }; var entityNext = new DapperCompisiteKeyEntity { products_id = id + 2, language_id = id + 2, products_name = (id + 2).ToString(), products_description = (id + 2).ToString(), products_short_description = (id + 2).ToString(), products_url = (id + 2).ToString(), products_viewed = (id + 2) }; #endregion try { using (DbTransactionScope scope = new DbTransactionScope(workContext)) { dapperRepository.Insert(entity); using (DbTransactionScope scope2 = new DbTransactionScope(workContext)) { dapperRepository.Insert(entityNext); scope2.Complete(); } scope.Complete(); } var sql = "select count(*) from dapper_compisite_key"; command.CommandText = sql; var count = Convert.ToInt32(command.ExecuteScalar()); Assert.Equal(count, 2); } finally { ClearDapperCompisiteKeyEntity(); } return(null); }); Assert.Equal(result, null); }
public void InsertSync() { ClearDapperCompisiteKeyEntity(); try { var d1 = new DapperCompisiteKeyEntity { language_id = 1, products_description = "1", products_id = 1, products_name = "1", products_short_description = "1", products_url = "1", products_viewed = 1 }; _dapper.InsertAsync(d1).GetAwaiter().GetResult(); var sql = string.Format("select * from dapper_compisite_key where products_id = {0} and language_id = {1}", d1.products_id, d1.language_id); helper.ExecuteReader(sql, reader => { if (reader.Read()) { CompareHelper.Compare(reader, d1); } }); } finally { ClearDapperCompisiteKeyEntity(); } }
public static void Compare(DbDataReader reader, DapperCompisiteKeyEntity entity) { reader.ColumnValueCompare("products_id", entity.products_id) .ColumnValueCompare("language_id", entity.language_id) .ColumnValueCompare("products_name", entity.products_name) .ColumnValueCompare("products_description", entity.products_description) .ColumnValueCompare("products_short_description", entity.products_short_description) .ColumnValueCompare("products_url", entity.products_url) .ColumnValueCompare("products_viewed", entity.products_viewed); }
public static void Compare(DapperCompisiteKeyEntity d1, DapperCompisiteKeyEntity entity) { Assert.Equal(d1.language_id.ToString(), entity.language_id.ToString()); Assert.Equal(d1.products_description.ToString(), entity.products_description.ToString()); Assert.Equal(d1.products_id.ToString(), entity.products_id.ToString()); Assert.Equal(d1.products_name, entity.products_name); Assert.Equal(d1.products_short_description, entity.products_short_description); Assert.Equal(d1.products_url, entity.products_url); Assert.Equal(d1.products_viewed.ToString(), entity.products_viewed.ToString()); }
private DapperCompisiteKeyEntity CreateDapperCompisiteKeyEntity(int products_id = 1, int language_id = 1, string products_description = "1", string products_name = "1", string products_short_description = "1", string products_url = "1") { var entity = new DapperCompisiteKeyEntity { language_id = language_id, products_description = products_description, products_id = products_id, products_name = products_name, products_short_description = products_short_description, products_url = products_url, products_viewed = 1 }; string sql = string.Format(@"insert into dapper_compisite_key(language_id,products_description,products_id,products_name,products_short_description,products_url,products_viewed) value ({0},'{1}',{2},'{3}','{4}','{5}',{6})", entity.language_id, entity.products_description, entity.products_id, entity.products_name, entity.products_short_description, entity.products_url, entity.products_viewed); if (helper.ExecuteSQL(sql, cmd => cmd.ExecuteNonQuery()) > 0) { return(entity); } return(null); }