コード例 #1
0
        public async Task <ActionResult <FamilyExpense> > PostFamilyExpense(FamilyExpense familyExpense)
        {
            _context.FamilyExpenses.Add(familyExpense);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetFamilyExpense", new { id = familyExpense.ExpenseId }, familyExpense));
        }
コード例 #2
0
        public async Task <IActionResult> PutFamilyExpense(int?id, FamilyExpense familyExpense)
        {
            if (id != familyExpense.ExpenseId)
            {
                return(BadRequest());
            }

            _context.Entry(familyExpense).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!FamilyExpenseExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #3
0
        public List <FamilyExpense> GetFamilyExpenseDetailsByDate(string startDate, string endDate)
        {
            using (SqlConnection connection = new SqlConnection(Utilities.GetConnectionString()))
            {
                using (SqlCommand command = new SqlCommand("GetFamilyExpensesByDate", connection))
                {
                    command.CommandType = System.Data.CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("@startDate", startDate);
                    command.Parameters.AddWithValue("@endDate", endDate);
                    try
                    {
                        if (connection.State == System.Data.ConnectionState.Closed)
                        {
                            connection.Open();
                            SqlDataReader        dr             = command.ExecuteReader();
                            List <FamilyExpense> familyExpenses = new List <FamilyExpense>();
                            while (dr.Read())
                            {
                                FamilyExpense familyExpense = new FamilyExpense();
                                familyExpense.ExpenseId      = Convert.ToInt32(dr["ExpenseId"]);
                                familyExpense.FamilyMemberId = Convert.ToInt32(dr["FamilyMemberId"]);
                                familyExpense.Name           = dr["Name"].ToString();
                                familyExpense.Purpose        = dr["Purpose"].ToString();
                                familyExpense.Amount         = Convert.ToInt32(dr["Amount"]);
                                familyExpense.Date           = Convert.ToDateTime(dr["DateTime"]);
                                familyExpenses.Add(familyExpense);
                            }
                            return(familyExpenses);
                        }
                    }

                    catch (SqlException ex)
                    {
                        throw ex;
                    }

                    finally
                    {
                        if (connection.State == System.Data.ConnectionState.Open)
                        {
                            connection.Close();
                        }
                    }
                }
            }
            return(null);
        }
コード例 #4
0
        public int EditFamilyExpense(FamilyExpense familyExpense)
        {
            using (SqlConnection connection = new SqlConnection(Utilities.GetConnectionString()))
            {
                using (SqlCommand command = new SqlCommand("EditFamilyExpense", connection))
                {
                    command.CommandType = System.Data.CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("@expenseId", familyExpense.ExpenseId);
                    command.Parameters.AddWithValue("@familyMemberId", familyExpense.FamilyMemberId);
                    command.Parameters.AddWithValue("@purpose", familyExpense.Purpose);
                    command.Parameters.AddWithValue("@amount", familyExpense.Amount);
                    command.Parameters.AddWithValue("@date", familyExpense.Date);
                    try
                    {
                        if (connection.State == System.Data.ConnectionState.Closed)
                        {
                            connection.Open();
                            int status = command.ExecuteNonQuery();
                            return(status);
                        }
                    }

                    catch (SqlException ex)
                    {
                        throw ex;
                    }

                    finally
                    {
                        if (connection.State == System.Data.ConnectionState.Open)
                        {
                            connection.Close();
                        }
                    }
                }
            }
            return(0);
        }