private static int DoRegisterNewDonorInDb(DonorInfo donorDetails)
        {
            int returnVal = 0;
            MySql.Data.MySqlClient.MySqlConnection msqlConnection = OpenDbConnection();

            try
            {
                //define the command reference
                MySql.Data.MySqlClient.MySqlCommand msqlCommand = new MySql.Data.MySqlClient.MySqlCommand();

                //define the connection used by the command object
                msqlCommand.Connection = msqlConnection;

                msqlCommand.CommandText = "INSERT INTO donor(donor_id,donor_name,donor_blood_group,donor_dob,donor_address,donor_contact,donor_last_blood_donate) "
                                                   + "VALUES(@donor_id,@donor_name,@donor_blood_group,@donor_dob,@donor_address,@donor_contact,@donor_last_blood_donate)";

                msqlCommand.Parameters.AddWithValue("@donor_id", donorDetails.id);
                msqlCommand.Parameters.AddWithValue("@donor_name", donorDetails.name);
                msqlCommand.Parameters.AddWithValue("@donor_blood_group", donorDetails.bloodGroup);
                msqlCommand.Parameters.AddWithValue("@donor_dob", donorDetails.dob);
                msqlCommand.Parameters.AddWithValue("@donor_address", donorDetails.address);
                msqlCommand.Parameters.AddWithValue("@donor_contact", donorDetails.phone);
                msqlCommand.Parameters.AddWithValue("@donor_last_blood_donate", donorDetails.lastDonateDate);

                msqlCommand.ExecuteNonQuery();

                returnVal = 1;
            }
            catch (Exception er)
            {
                returnVal = 0;
            }
            finally
            {
                //always close the connection
                msqlConnection.Close();
            }
            return returnVal;
        }
        private void searchBtn_Click(object sender, RoutedEventArgs e)
        {
            DonorInfo donorTosearch = new DonorInfo();
            donorTosearch.name = searchTxtBlck.Text;

            List<DonorInfo> donors = BDMSDb.DbInteraction.SearchAllDonorList(donorTosearch);

            _donorCollection.Clear();

            foreach (DonorInfo donor in donors)
            {
                _donorCollection.Add(donor);
            }
        }
        public static DonorInfo getDonorInfo(string donorId)
        {
            DonorInfo donor = new DonorInfo();

            MySql.Data.MySqlClient.MySqlConnection msqlConnection = OpenDbConnection();

            try
            {   //define the command reference
                MySql.Data.MySqlClient.MySqlCommand msqlCommand = new MySql.Data.MySqlClient.MySqlCommand();
                msqlCommand.Connection = msqlConnection;

                msqlCommand.CommandText = "Select * From donor WHERE donor_id=@id;";
                msqlCommand.Parameters.AddWithValue("@id", donorId);
                MySql.Data.MySqlClient.MySqlDataReader msqlReader = msqlCommand.ExecuteReader();

                msqlReader.Read();

               // donor.id = msqlReader.GetString("id");
                donor.phone = msqlReader.GetString("donor_contact");

            }
            catch (Exception er)
            {
            }
            finally
            {
                //always close the connection
                msqlConnection.Close();
            }

            return donor;
        }
        public static void EditDonor(DonorInfo donorToEdit)
        {
            MySql.Data.MySqlClient.MySqlConnection msqlConnection = OpenDbConnection();

            try
            {   //define the command reference
                MySql.Data.MySqlClient.MySqlCommand msqlCommand = new MySql.Data.MySqlClient.MySqlCommand();
                msqlCommand.Connection = msqlConnection;

                msqlCommand.CommandText = "UPDATE donor SET donor_name=@donor_name,donor_blood_group=@donor_blood_group,donor_dob=@donor_dob,donor_address=@donor_address,donor_contact=@donor_contact,donor_last_blood_donate=@donor_last_blood_donate WHERE donor_id= @donorIdToDelete";
                msqlCommand.Parameters.AddWithValue("@donor_name", donorToEdit.name);
                msqlCommand.Parameters.AddWithValue("@donor_blood_group", donorToEdit.bloodGroup);
                msqlCommand.Parameters.AddWithValue("@donor_dob", donorToEdit.dob);
                msqlCommand.Parameters.AddWithValue("@donor_address", donorToEdit.address);
                msqlCommand.Parameters.AddWithValue("@donor_contact", donorToEdit.phone);
                msqlCommand.Parameters.AddWithValue("@donor_last_blood_donate", donorToEdit.lastDonateDate);
                msqlCommand.Parameters.AddWithValue("@donorIdToDelete", donorToEdit.id);
                msqlCommand.ExecuteNonQuery();

            }
            catch (Exception er)
            {
            }
            finally
            {
                //always close the connection
                msqlConnection.Close();
            }
        }
 public static int DoRegisterNewDonor(DonorInfo donorDetails)
 {
     return DoRegisterNewDonorInDb(donorDetails);
 }
        private static List<DonorInfo> QueryAllDonorList()
        {
            List<DonorInfo> DonorList = new List<DonorInfo>();
            MySql.Data.MySqlClient.MySqlConnection msqlConnection = OpenDbConnection();

            try
            {   //define the command reference
                MySql.Data.MySqlClient.MySqlCommand msqlCommand = new MySql.Data.MySqlClient.MySqlCommand();
                msqlCommand.Connection = msqlConnection;

                msqlCommand.CommandText = "Select * From donor;";
                MySql.Data.MySqlClient.MySqlDataReader msqlReader = msqlCommand.ExecuteReader();

                while (msqlReader.Read())
                {
                    DonorInfo Donor = new DonorInfo();

                    Donor.id = msqlReader.GetString("donor_id");
                    Donor.name = msqlReader.GetString("donor_name");
                    Donor.bloodGroup = msqlReader.GetString("donor_blood_group");
                    Donor.dob = msqlReader.GetDateTime("donor_dob");
                    Donor.address = msqlReader.GetString("donor_address");
                    Donor.phone = msqlReader.GetString("donor_contact");
                    Donor.lastDonateDate = msqlReader.GetDateTime("donor_last_blood_donate");

                    DonorList.Add(Donor);
                }

            }
            catch (Exception er)
            {
            }
            finally
            {
                //always close the connection
                msqlConnection.Close();
            }

            return DonorList;
        }
 public static List<DonorInfo> SearchAllDonorList(DonorInfo donorTosearch)
 {
     return SearchAllDonorListDetails(donorTosearch);
 }