public void SetParameterValuesGeneric() { var category = new Category { CategoryName = "Test", Description = "FluentUtil" }; // delete exist category NorthwindAdoRepository.ExecuteNonQueryBySqlString( @"DELETE FROM Categories where CategoryName = @CategoryName", new AdoParameter("CategoryName", category.CategoryName, DbType.String, 255)); // insert using (var command = NorthwindAdoRepository.GetProcedureCommand("SaveOrUpdateCategory", true)) { AdoTool.SetParameterValues(NorthwindAdoRepository.Db, command, category, command.Mapping(NameMappingUtil.CapitalizeMappingFunc('_', ' '))); category.CategoryId = NorthwindAdoRepository.ExecuteCommand(command).AsInt(-1); Assert.AreNotEqual(-1, category.CategoryId); } // update using (var command = NorthwindAdoRepository.GetProcedureCommand("SaveOrUpdateCategory", true)) { AdoTool.SetParameterValues(NorthwindAdoRepository.Db, command, category, command.Mapping(NameMappingUtil.CapitalizeMappingFunc('_', ' '))); category.CategoryId = NorthwindAdoRepository.ExecuteCommand(command).AsInt(-1); Assert.AreNotEqual(-1, category.CategoryId); } }
public void DatabaseToPersistentObject() { // CustOrderHist2 는 컬럼명만 PROJECT_NAME, TOTAL 로 변경한 것이다. using (var reader = SQLiteRepository.ExecuteReaderBySqlString(GetCustomerOrderHistorySql, CustomerTestParameter)) { var orderHistories = reader.Map <CustomerOrderHistory>(reader.Mapping(NameMappingUtil.CapitalizeMappingFunc('_', ' '))).ToList(); Assert.IsTrue(orderHistories.Count > 0); Console.WriteLine("Order History: " + orderHistories.CollectionToString()); } }
public void MapFromDataReaderByNameMappingFuncs(int firstResult, int maxResults) { // CustOrderHist2 Procedure를 만들어야 한다. (Column 명을 대문자, '_'로 바꾼다. 즉 PRODUCT_NAME, TOTAL 로 column명만 바꾼다 using (var reader = NorthwindAdoRepository.ExecuteReaderByProcedure("CustOrderHist2", CustomerTestParameter)) { var orderHistories = reader.Map <CustomerOrderHistory>(reader.Mapping(NameMappingUtil.CapitalizeMappingFunc('_', ' ')), firstResult, maxResults); if (log.IsInfoEnabled) { Console.WriteLine(orderHistories.CollectionToString()); } Assert.Greater(orderHistories.Count, 0); } }
public void ConvertAllFromDataTableByNameMappingFuncs(int firstResult, int maxResults) { // CustOrderHist2 Procedure를 만들어야 한다. (Column 명을 대문자, '_'로 바꾼다. 즉 PRODUCT_NAME, TOTAL 로 column명만 바꾼다 using (var dt = NorthwindAdoRepository.ExecuteDataTableByProcedure("CustOrderHist2", firstResult, maxResults, CustomerTestParameter)) { Assert.IsFalse(dt.HasErrors); Assert.Greater(dt.Rows.Count, 1); var orderHistories = AdoTool.Map <CustomerOrderHistory>(dt, dt.Mapping(NameMappingUtil .CapitalizeMappingFunc('_', ' '))); if (IsDebugEnabled) { log.Debug(orderHistories.CollectionToString()); } Assert.Greater(orderHistories.Count, 0); } }