public int CreateEntity(Blog blogToCreate) { using (var cmd = UnitOfWork.CreateCommand()) { try { cmd.CommandText = "CreateBlog"; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@BlogTitle", SqlDbType.VarChar, 50) { Value = blogToCreate.BlogTitle }); cmd.Parameters.Add(new SqlParameter("@CreationDate", SqlDbType.DateTime) { Value = blogToCreate.CreationDate }); cmd.Parameters.Add(new SqlParameter("@UserId", SqlDbType.Int) { Value = blogToCreate.CreatedBy.Id }); var outPutParameter = new SqlParameter("@CreatedBlogId", SqlDbType.Int, 50, ParameterDirection.InputOutput, false, 0, 0, "@CreatedBlogId", DataRowVersion.Original, null); outPutParameter.Value = ParameterDirection.InputOutput; cmd.Parameters.Add(outPutParameter); cmd.ExecuteNonQuery(); int createdBlogId = Convert.ToInt32(outPutParameter.Value); _blogBuilder.SetBlogId(blogToCreate, createdBlogId); return(createdBlogId); } catch (SqlException ex) { throw new ApplicationException(ex.Message, ex); } } }
public AnswerStatus CreateCategory(CategoryDto categoryDTO, ICategoryRepository categoryRepository) { try { var blogRepository = _repositoryFactory.CreateBlogRepository(categoryRepository.UnitOfWork); var categoryToCreate = _categoryBuilder.CreateCategory(categoryDTO.CategoryName); var categoryBlog = blogRepository.GetEntityById(categoryDTO.RelatedTo.Id); _blogBuilder.SetBlogId(categoryBlog, categoryDTO.RelatedTo.Id); _categoryBuilder.SetBlogRelatedTo(categoryToCreate, categoryBlog); categoryRepository.CreateEntity(categoryToCreate); return(AnswerStatus.Successfull); } catch (Exception exc) { _logger.Log(exc.ToString()); return(AnswerStatus.Failed); } }