Пример #1
0
    private void ReadField <T>(T obj, FieldInfo fieldInfo, MySqlDataReader reader, int ordinal)
    {
        Type type = fieldInfo.FieldType;

        System.Object value = null;

        if (type == typeof(int))
        {
            value = reader.GetFieldValue <int>(ordinal);
        }
        else if (type == typeof(byte))
        {
            value = reader.GetFieldValue <byte>(ordinal);
        }
        else if (type == typeof(uint))
        {
            value = reader.GetFieldValue <uint>(ordinal);
        }
        else if (type == typeof(string))
        {
            value = reader.GetFieldValue <string>(ordinal);
        }
        else if (type == typeof(float))
        {
            value = reader.GetFieldValue <float>(ordinal);
        }
        //else if (type == typeof(Vector3))
        //{
        //    value = reader.GetFieldValue<string>(ordinal);
        //    string[] str = value.ToString().Split(',');
        //    value = new Vector3(float.Parse(str[0]), float.Parse(str[1]), float.Parse(str[2]));
        //}

        fieldInfo.SetValue(obj, value);
    }
Пример #2
0
        public User GetUser(string username, string password)
        {
            MySqlCommand cmd = Connection.CreateCommand();

            cmd.CommandText = @"SELECT fname, lname, role 
                                FROM userexample
                                WHERE username=@username AND password=@password";
            cmd.Parameters.AddWithValue("@username", username);
            cmd.Parameters.AddWithValue("@password", password);
            MySqlDataReader reader = cmd.ExecuteReader();

            reader.Read();
            if (!reader.HasRows)
            {
                throw new UserCredentialNotMatchException("Incorrect username or password");
            }
            User user = new User();

            user.Username  = username;
            user.Firstname = reader.GetFieldValue <string>(0);
            user.Lastname  = reader.GetFieldValue <string>(1);
            user.Role      = reader.GetFieldValue <string>(2);
            if (reader.Read())
            {
                throw new MutipleUsersFoundException("Found more than one user");
            }
            return(user);
        }
Пример #3
0
    private void ReadField <T>(T obj, FieldInfo fieldInfo, MySqlDataReader reader, int ordinal)
    {
        Type type = fieldInfo.FieldType;

        System.Object value = null;

        if (type == typeof(int))
        {
            value = reader.GetFieldValue <int>(ordinal);
        }
        else if (type == typeof(byte))
        {
            value = reader.GetFieldValue <byte>(ordinal);
        }
        else if (type == typeof(uint))
        {
            value = reader.GetFieldValue <uint>(ordinal);
        }
        else if (type == typeof(string))
        {
            value = reader.GetFieldValue <string>(ordinal);
        }
        else if (type == typeof(float))
        {
            value = reader.GetFieldValue <float>(ordinal);
        }

        fieldInfo.SetValue(obj, value);
    }
Пример #4
0
        public static async Task <bool> ProcessListEntry(UInt64 user_id)
        {
            string sdays = "", stimes = "";
            byte   enable = 0;

            var sqlconn = await ARDBConnectionManager.default_manager.CheckOut();

            try
            {
                string cmd = "SELECT * FROM `" + elevator_list_id.ToString() + "` WHERE user_id=@user_id;";

                using (MySqlCommand sqlcmd = new MySqlCommand(cmd, sqlconn.Connection))
                {
                    sqlcmd.Parameters.AddWithValue("@user_id", user_id);

                    using (MySqlDataReader reader = sqlcmd.ExecuteReader())
                        if (reader.Read())
                        {
                            sdays  = reader.GetFieldValue <string>(1);
                            stimes = reader.GetFieldValue <string>(2);
                            enable = reader.GetFieldValue <byte>(3);
                        }
                }
            }
            catch (Exception ex) { return(false); }

            ARDBConnectionManager.default_manager.CheckIn(sqlconn);

            if (enable == 0)
            {
                return(false);
            }

            var spans = ListEntryUtilities.ConvertTimeStringToTimeSpans(stimes);

            var days = ListEntryUtilities.ConvertDOWStringToBools(sdays);

            var current_stamp = DateTime.Now;

            var day_of_week = current_stamp.DayOfWeek;

            if (days[(int)day_of_week] == false)
            {
                return(false);
            }

            if (((((current_stamp.Hour == spans[0].Hours) && (current_stamp.Minute >= spans[0].Minutes)) || ((current_stamp.Hour == spans[1].Hours) && current_stamp.Minute <= spans[1].Minutes))) ||
                ((current_stamp.Hour > spans[0].Hours) && (current_stamp.Hour < spans[1].Hours)))
            {
                return(true);
            }

            return(false);
        }
Пример #5
0
        public List <Point> GetCoordinates(string id)
        {
            List <Point> result = new List <Point>();

            string query = $"SELECT * FROM vCoordinate WHERE kCut = {id}";

            MySqlCommand cmd = new MySqlCommand(query, Connection)
            {
                CommandType = CommandType.Text
            };

            using (MySqlDataReader mySqlDataReader = cmd.ExecuteReader())
            {
                while (mySqlDataReader.Read())
                {
                    try
                    {
                        Point point = new Point();

                        try
                        {
                            point.X = Convert.ToInt32(mySqlDataReader.GetFieldValue <double>(1));
                        }
                        catch (Exception ex)
                        {
                            point.X = 0;
                        }

                        try
                        {
                            point.Y = Convert.ToInt32(mySqlDataReader.GetFieldValue <double>(2));
                        }
                        catch (Exception ex)
                        {
                            point.Y = 0;
                        }

                        result.Add(point);
                    }
                    catch (Exception ex)
                    {
                        MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                            ex.Message);
                    }
                }

                mySqlDataReader.Close();
            }

            return(result);
        }
Пример #6
0
        public static List <Patient> GetAll()
        {
            List <Patient> pl = new();
            MySqlCommand   command;

            command = new("SELECT * FROM patients Limit 50;", DataBaseHandler.Connection);
            DataBaseHandler.Open();
            MySqlDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                pl.Add(new Patient
                       (
                           (reader.IsDBNull(0)) ? null : reader.GetFieldValue <int>(0),
                           (reader.IsDBNull(1)) ? null : reader.GetFieldValue <int>(1),
                           (reader.IsDBNull(2)) ? null : reader.GetFieldValue <string>(2),
                           (reader.IsDBNull(3)) ? null : reader.GetFieldValue <string>(3),
                           (reader.IsDBNull(4)) ? null : reader.GetFieldValue <string>(4),
                           (reader.IsDBNull(5)) ? null : reader.GetFieldValue <string>(5),
                           (reader.IsDBNull(5)) ? null : reader.GetFieldValue <string>(6),
                           (reader.IsDBNull(6)) ? null : JsonSerializer.Deserialize <List <PatientData> >(reader.GetFieldValue <string>(7)),
                           (reader.IsDBNull(7)) ? null : reader.GetFieldValue <int>(8)
                       ));
            }
            reader.Close();
            DataBaseHandler.Close();
            return(pl);
        }
Пример #7
0
        public static List <Patient> GetByUserID(int?userID)
        {
            List <Patient> pl = new();
            MySqlCommand   command;

            command = new("SELECT * FROM patients WHERE doctor_id = @doctor_id", DataBaseHandler.Connection);
            command.Parameters.Add("@doctor_id", MySqlDbType.Int32).Value = userID;
            DataBaseHandler.Open();
            MySqlDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                pl.Add(new Patient
                       (
                           (reader.IsDBNull(0)) ? null : reader.GetFieldValue <int>(0),
                           (reader.IsDBNull(1)) ? null : reader.GetFieldValue <int>(1),
                           (reader.IsDBNull(2)) ? null : reader.GetFieldValue <string>(2),
                           (reader.IsDBNull(3)) ? null : reader.GetFieldValue <string>(3),
                           (reader.IsDBNull(4)) ? null : reader.GetFieldValue <string>(4),
                           (reader.IsDBNull(5)) ? null : reader.GetFieldValue <string>(5),
                           (reader.IsDBNull(5)) ? null : reader.GetFieldValue <string>(6),
                           (reader.IsDBNull(6)) ? null : JsonSerializer.Deserialize <List <PatientData> >(reader.GetFieldValue <string>(7)),
                           (reader.IsDBNull(7)) ? null : reader.GetFieldValue <int>(8)
                       ));
            }
            reader.Close();
            DataBaseHandler.Close();
            return(pl);
        }
Пример #8
0
        public static List <Patient> FindBySomeData(string request)
        {
            List <Patient> pl = new();
            MySqlCommand   command;

            command = new("SELECT * FROM patients WHERE last_name LIKE @last_name;", DataBaseHandler.Connection);
            command.Parameters.Add("@last_name", MySqlDbType.VarChar).Value = "%" + request + "%";
            DataBaseHandler.Open();
            MySqlDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                pl.Add(new Patient
                       (
                           (reader.IsDBNull(0)) ? null : reader.GetFieldValue <int>(0),
                           (reader.IsDBNull(1)) ? null : reader.GetFieldValue <int>(1),
                           (reader.IsDBNull(2)) ? null : reader.GetFieldValue <string>(2),
                           (reader.IsDBNull(3)) ? null : reader.GetFieldValue <string>(3),
                           (reader.IsDBNull(4)) ? null : reader.GetFieldValue <string>(4),
                           (reader.IsDBNull(5)) ? null : reader.GetFieldValue <string>(5),
                           (reader.IsDBNull(5)) ? null : reader.GetFieldValue <string>(6),
                           (reader.IsDBNull(6)) ? null : JsonSerializer.Deserialize <List <PatientData> >(reader.GetFieldValue <string>(7)),
                           (reader.IsDBNull(7)) ? null : reader.GetFieldValue <int>(8)
                       ));
            }
            reader.Close();
            DataBaseHandler.Close();
            return(pl);
        }
Пример #9
0
 IEnumerable <T> ForEachFirstCol <T>(IWrappedDataReader p_wrappedReader)
 {
     // yield无法使用await,无法在含catch的try内
     // 一定要使用using 或 finally方式释放资源,不然foreach内部break时资源无法释放!!!
     try
     {
         using (p_wrappedReader)
         {
             MySqlDataReader reader = (MySqlDataReader)p_wrappedReader.Reader;
             var             cols   = reader.GetColumnSchema();
             if (cols[0].DataType == typeof(T))
             {
                 while (reader.Read())
                 {
                     yield return(reader.GetFieldValue <T>(0));
                 }
             }
             else
             {
                 while (reader.Read())
                 {
                     yield return((T)Convert.ChangeType(reader.GetValue(0), typeof(T)));
                 }
             }
         }
     }
     finally
     {
         ReleaseConnection();
     }
 }
Пример #10
0
        public T ExecuteReader(string query, T source)
        {
            cmd = new MySqlCommand();
            Get_Connection();

            using (cmd.Connection = conn)
            {
                cmd.CommandType = System.Data.CommandType.Text;
                cmd.CommandText = query;
                T item;
                try
                {
                    using (MySqlDataReader reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            for (int i = 0; i < reader.FieldCount; i++)
                            {
                                item = source;

                                reader.GetFieldValue <T>(i);
                            }
                        }
                    }
                }
                catch (Exception)
                {
                    throw;
                }
                return(item = source);
            }
        }
Пример #11
0
 private static T GetSafeField <T>(MySqlDataReader reader, int index)
 {
     if (!reader.IsDBNull(index))
     {
         return(reader.GetFieldValue <T>(index));
     }
     return(default(T));
 }
        public static T?GetValueOrNullable <T>(this MySqlDataReader reader, int ordinal) where T : struct
        {
            if (reader.IsDBNull(ordinal))
            {
                return(null);
            }

            return(reader.GetFieldValue <T>(ordinal));
        }
        public static T GetValueOrDefault <T>(
            [NotNull] this MySqlDataReader reader,
            [NotNull] string name)
        {
            var idx = reader.GetOrdinal(name);

            return(reader.IsDBNull(idx)
        ? default(T)
        : reader.GetFieldValue <T>(idx));
        }
Пример #14
0
        private void удалитьКнигуToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string bookid;

            try
            {
                bookid = this.dataGridView1.CurrentRow.Cells[0].Value.ToString();
                string Connect = "Database=" + Properties.Settings.Default.DataBase + ";Data Source=" + Properties.Settings.Default.DataSourse + ";User Id=" + Properties.Settings.Default.UserLog + ";Password= "******"SELECT bookway FROM BookLocation WHERE idBookLocation ='" + bookid + "'";

                using (MySqlDataReader reader = MyCommand.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        FName = reader.GetFieldValue <string>(0);

                        MyConnection.Close();
                        try
                        {
                            MyConnection.Open();

                            MyCommand.CommandText = "DELETE FROM Books WHERE idКниги = " + bookid;

                            MyCommand.ExecuteNonQuery();

                            string path = "/";
                            ftpRequest             = (FtpWebRequest)WebRequest.Create("ftp://" + _Host + path + "/" + FName);
                            ftpRequest.Credentials = new NetworkCredential(_UserName, _Password);
                            ftpRequest.EnableSsl   = _UseSSL;
                            ftpRequest.Method      = WebRequestMethods.Ftp.DeleteFile;
                            FtpWebResponse ftpResponse = (FtpWebResponse)ftpRequest.GetResponse();
                            ftpResponse.Close();
                            MyConnection.Close();
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #15
0
        public List <Result> GetResults(string id)
        {
            List <Result> resultList = new List <Result>();

            string query = $"SELECT * FROM vResult WHERE kCut = {id} ORDER BY cResultType, cIdentifier, cKey";

            MySqlCommand cmd = new MySqlCommand(query, Connection)
            {
                CommandType = CommandType.Text
            };

            using (MySqlDataReader mySqlDataReader = cmd.ExecuteReader())
            {
                while (mySqlDataReader.Read())
                {
                    Result result = new Result();

                    object rawResultType = mySqlDataReader.GetFieldValue <object>(1);
                    object rawIdentifier = mySqlDataReader.GetFieldValue <object>(2);
                    object rawKey        = mySqlDataReader.GetFieldValue <object>(3);
                    object rawValue      = mySqlDataReader.GetFieldValue <object>(4);
                    object rawUnit       = mySqlDataReader.GetFieldValue <object>(5);


                    result.CutId      = Convert.ToInt16(id);
                    result.ResultType = rawResultType is DBNull ? null : (string)rawResultType;
                    result.Identifier = rawIdentifier is DBNull ? null : (string)rawIdentifier;
                    result.Key        = rawKey is DBNull ? null : (string)rawKey;
                    result.Value      = rawValue is DBNull ? null : (string)rawValue;
                    result.Unit       = rawUnit is DBNull ? null : (string)rawUnit;

                    resultList.Add(result);
                }

                mySqlDataReader.Close();
            }

            return(resultList);
        }
Пример #16
0
        public static T SafeRead <T>(MySqlDataReader reader, string column)
        {
            var index = reader.GetOrdinal(column);

            if (!reader.IsDBNull(index))
            {
                return(reader.GetFieldValue <T>(index));
            }
            else
            {
                return(default(T));
            }
        }
Пример #17
0
        private Dictionary <Service, Doctor> GetDoctorOfService(uint idType)
        {
            Dictionary <Service, Doctor> buffer = new Dictionary <Service, Doctor>();

            if (connect.IsConnect())
            {
                string selectDoctor = "SELECT s.id, s.lable, s.price, s.action_service, d.id, d.fio, d.cabinet_number, d.specialization FROM service_of_doctor AS sod " +
                                      "JOIN service AS s ON s.id = sod.id_service " +
                                      "JOIN doctor AS d ON d.id = sod.id_doctor " +
                                      "WHERE s.id_type = @idType";
                using (MySqlCommand command = new MySqlCommand(selectDoctor, connect.GetConnect))
                {
                    command.Parameters.AddWithValue("@idType", idType);
                    using (MySqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            buffer.Add(new Service()
                            {
                                Id     = reader.GetFieldValue <uint>(0),
                                Lable  = reader.GetString(1),
                                Price  = reader.GetFieldValue <uint>(2),
                                Action = reader.GetString(3)
                            }, new Doctor()
                            {
                                Id             = reader.GetFieldValue <uint>(4),
                                Fio            = reader.GetString(5),
                                CabinetNumber  = reader.GetString(6),
                                Specialization = reader.GetString(7)
                            });
                        }
                        reader.Close();
                    }
                }
                connect.Close();
            }
            return(new Dictionary <Service, Doctor>(buffer));
        }
Пример #18
0
    public static List <Dictionary <String, Object> > ExecSqlReturn(String sql) //返回查找结果集的
    {
        List <Dictionary <String, Object> > list = new List <Dictionary <String, Object> >();
        MySqlCommand    command = new MySqlCommand(sql, GetSqlConnection());
        MySqlDataReader reader  = command.ExecuteReader();

        while (reader.Read())
        {
            Dictionary <string, Object> keyValues = new Dictionary <string, Object>();
            for (int i = 0; i < reader.FieldCount; i++)
            {
                keyValues.Add(reader.GetName(i), reader.GetFieldValue <Object>(i));
            }
            list.Add(keyValues);
        }
        reader.Close();
        return(list);
    }
Пример #19
0
        async public static Task <DataTable> GetTableAsync(string sql, DbParameter[] paras)
        {
            DataTable dt = new DataTable();

            var conn = CreateConnection();
            var cmd  = CreateCmd(sql, conn, paras);

            await OpenConnectionAsync(conn);

            try
            {
                MySqlDataReader dr = await cmd.ExecuteReaderAsync() as MySqlDataReader;

                for (int i = 0; i < dr.FieldCount; i++)
                {
                    string columnName = dr.GetName(i);
                    dt.Columns.Add(new DataColumn(columnName));
                }

                while (await dr.ReadAsync())
                {
                    var row = dt.NewRow();
                    for (int i = 0; i < dr.FieldCount; i++)
                    {
                        row[i] = dr.GetFieldValue <object>(i);
                    }

                    dt.Rows.Add(row);
                }

                CloseConnection(conn);
            }
            catch (Exception ex)
            {
                CloseConnection(conn);
                throw ex;
            }

            return(dt);
        }
Пример #20
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            string userid;
            sbyte  checkadd     = 0;
            sbyte  checkdelete  = 0;
            sbyte  checkedit    = 0;
            sbyte  checkcontrol = 0;

            userid = this.dataGridView1.CurrentRow.Cells[0].Value.ToString();
            try
            {
                string          Connect      = "Database=" + Properties.Settings.Default.DataBase + ";Data Source=" + Properties.Settings.Default.DataSourse + ";User Id=" + Properties.Settings.Default.UserLog + ";Password= "******"SELECT ИмяПользователя,Логин,Пароль FROM User WHERE idПользователя ='" + userid + "'";
                MyConnection.Open();
                using (MySqlDataReader reader = MyCommand.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        UserName.Text = reader.GetFieldValue <string>(0);
                        Login.Text    = reader.GetFieldValue <string>(1);
                        Pass.Text     = reader.GetFieldValue <string>(2);
                        MyConnection.Close();

                        try
                        {
                            MyCommand.CommandText = "SELECT bookadd,bookdelete,bookedit,usercontrol FROM UserRights WHERE idUserRights ='" + userid + "'";
                            MyConnection.Open();
                            using (MySqlDataReader reader1 = MyCommand.ExecuteReader())
                            {
                                if (reader1.Read())
                                {
                                    checkadd     = reader1.GetFieldValue <sbyte>(0);
                                    checkdelete  = reader1.GetFieldValue <sbyte>(1);
                                    checkedit    = reader1.GetFieldValue <sbyte>(2);
                                    checkcontrol = reader1.GetFieldValue <sbyte>(3);
                                    if (checkadd != 0)
                                    {
                                        CheckAdd.Checked = true;
                                    }
                                    else
                                    {
                                        CheckAdd.Checked = false;
                                    }
                                    if (checkdelete != 0)
                                    {
                                        CheckDelete.Checked = true;
                                    }
                                    else
                                    {
                                        CheckDelete.Checked = false;
                                    }
                                    if (checkedit != 0)
                                    {
                                        CheckEdit.Checked = true;
                                    }
                                    else
                                    {
                                        CheckEdit.Checked = false;
                                    }
                                    if (checkcontrol != 0)
                                    {
                                        CheckControl.Checked = true;
                                    }
                                    else
                                    {
                                        CheckControl.Checked = false;
                                    }
                                    MyConnection.Close();
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #21
0
 public static T SafeGet <T>(this MySqlDataReader reader, int col)
 {
     return(reader.IsDBNull(col) ? default(T) : reader.GetFieldValue <T>(col));
 }
Пример #22
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                int    id;
                string username;
                string log;
                string password;
                SByte  Add, Delete, Edit, UserControl;
                username = "******";

                log      = Login.Text;
                password = Pass.Text;
                string          Connect      = "Database=" + Properties.Settings.Default.DataBase + ";Data Source=" + Properties.Settings.Default.DataSourse + ";User Id=" + Properties.Settings.Default.UserLog + ";Password="******"SELECT idПользователя,ИмяПользователя FROM user WHERE Логин ='" + log + "'and Пароль ='" + password + "'";

                using (MySqlDataReader reader = MyCommand.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        id = reader.GetFieldValue <int>(0);
                        Properties.Settings.Default.UserName  = reader.GetFieldValue <string>(1);
                        Properties.Settings.Default.UserLogId = id;

                        MyConnection.Close();
                        try
                        {
                            MyCommand.CommandText = "SELECT bookadd,bookdelete,bookedit,usercontrol FROM UserRights WHERE idUserRights = '" + id + "'";
                            MyConnection.Open();

                            using (MySqlDataReader reader1 = MyCommand.ExecuteReader())
                            {
                                if (reader1.Read())
                                {
                                    Add         = reader1.GetFieldValue <SByte>(0);
                                    Delete      = reader1.GetFieldValue <SByte>(1);
                                    Edit        = reader1.GetFieldValue <SByte>(2);
                                    UserControl = reader1.GetFieldValue <SByte>(3);

                                    Properties.Settings.Default.Add     = Add;
                                    Properties.Settings.Default.Delete  = Delete;
                                    Properties.Settings.Default.Editing = Edit;
                                    Properties.Settings.Default.Eduser  = UserControl;

                                    MessageBox.Show("Добро пожаловать " + Properties.Settings.Default.UserName);
                                    Data.EventHanler1(username);

                                    MyConnection.Close();
                                    Close();
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                    else
                    {
                        groupBox1.Text      = "Неверный логин или пароль";
                        groupBox1.ForeColor = Color.Red;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #23
0
 public T GetFieldValue <T>(int ordinal)
 {
     return(_mySqlDataReader.GetFieldValue <T>(ordinal));
 }
 public static T GetValueOrNull <T>(this MySqlDataReader reader, int ordinal) where T : class
 {
     return(!reader.IsDBNull(ordinal) ? reader.GetFieldValue <T>(ordinal) : null);
 }
Пример #25
0
        public List <Cut> GetCut(int minId, int maxId, string orderBy = "kCut")
        {
            List <Cut> result = new List <Cut>();

            try
            {
                string query = $"SELECT * FROM vCut WHERE kCut >= {minId} AND kCut <= {maxId} ORDER BY {orderBy}";

                MySqlCommand cmd = new MySqlCommand(query, Connection)
                {
                    CommandType = CommandType.Text
                };

                using (MySqlDataReader mySqlDataReader = cmd.ExecuteReader())
                {
                    while (mySqlDataReader.Read())
                    {
                        //Cut cut = new Cut();

                        //cut.Id = Convert.ToInt16(mySqlDataReader.GetFieldValue<UInt16>(0));
                        //cut.Age = Convert.ToInt16(mySqlDataReader.GetFieldValue<byte>(1));
                        //cut.Genotype = mySqlDataReader.GetFieldValue<string>(2);
                        //cut.Animal = mySqlDataReader.GetFieldValue<string>(3);
                        //cut.CutIdentifier = mySqlDataReader.GetFieldValue<string>(4);
                        //cut.Method = mySqlDataReader.GetFieldValue<string>(5);

                        //if (DateTime.TryParse(mySqlDataReader.GetValue(6)?.ToString(), out var dateMeasurement))
                        //{
                        //    cut.DateMeasurement = dateMeasurement;
                        //}

                        //if (DateTime.TryParse(mySqlDataReader.GetValue(7)?.ToString(), out var dateStaining))
                        //{
                        //    cut.DateStaining = dateStaining;
                        //}

                        //cut.ZoomFactor = (float) Convert.ToDouble(mySqlDataReader.GetFieldValue<Single>(8));
                        //cut.Layer = mySqlDataReader.GetFieldValue<string>(9);
                        //cut.Note = mySqlDataReader.GetFieldValue<string>(10);

                        //result.Add(cut);

                        try
                        {
                            Cut cut = new Cut();

                            try
                            {
                                cut.Id = Convert.ToInt16(mySqlDataReader.GetFieldValue <UInt16>(0));
                            }
                            catch (Exception ex)
                            {
                                cut.Id = -1;
                            }

                            try
                            {
                                cut.Age = Convert.ToInt16(mySqlDataReader.GetFieldValue <byte>(1));
                            }
                            catch (Exception ex)
                            {
                                cut.Age = -1;
                            }

                            try
                            {
                                cut.Genotype = mySqlDataReader.GetFieldValue <string>(2);
                            }
                            catch (Exception ex)
                            {
                                cut.Genotype = "KO";
                            }

                            try
                            {
                                cut.Animal = mySqlDataReader.GetFieldValue <string>(3);
                            }
                            catch (Exception ex)
                            {
                                cut.Animal = "unknown";
                            }

                            try
                            {
                                cut.CutIdentifier = mySqlDataReader.GetFieldValue <string>(4);
                            }
                            catch (Exception ex)
                            {
                                cut.CutIdentifier = "unknown";
                            }

                            try
                            {
                                cut.Method = mySqlDataReader.GetFieldValue <string>(5);
                            }
                            catch (Exception ex)
                            {
                                cut.Method = "unknown";
                            }

                            try
                            {
                                if (DateTime.TryParse(mySqlDataReader.GetValue(6)?.ToString(), out var dateMeasurement))
                                {
                                    cut.DateMeasurement = dateMeasurement;
                                }
                            }
                            catch (Exception ex)
                            {
                                MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                                    ex.Message);
                            }

                            try
                            {
                                if (DateTime.TryParse(mySqlDataReader.GetValue(7)?.ToString(), out var dateStaining))
                                {
                                    cut.DateStaining = dateStaining;
                                }
                            }
                            catch (Exception ex)
                            {
                                MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                                    ex.Message);
                            }

                            try
                            {
                                cut.ZoomFactor = (float)Convert.ToDouble(mySqlDataReader.GetFieldValue <Single>(8));
                            }
                            catch (Exception ex)
                            {
                                cut.ZoomFactor = -1;
                            }

                            try
                            {
                                cut.Layer = mySqlDataReader.GetFieldValue <string>(9);
                            }
                            catch (Exception ex)
                            {
                                cut.Layer = "unknown";
                            }

                            try
                            {
                                cut.Note = mySqlDataReader.GetFieldValue <string>(10);
                            }
                            catch (Exception ex)
                            {
                                cut.Note = "unknown";
                            }

                            result.Add(cut);
                        }
                        catch (Exception ex)
                        {
                            MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                                ex.Message);
                        }
                    }

                    mySqlDataReader.Close();
                }
            }
            catch (Exception ex)
            {
                MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                    ex.Message);
            }

            return(result);
        }
Пример #26
0
        private void dataGridView1_DoubleClick(object sender, EventArgs e)
        {
            string bookid;
            string bookname;

            try
            {
                bookid   = this.dataGridView1.CurrentRow.Cells[0].Value.ToString();
                bookname = this.dataGridView1.CurrentRow.Cells[1].Value.ToString();

                Properties.Settings.Default.BookName = this.dataGridView1.CurrentRow.Cells[1].Value.ToString();

                string Connect = "Database=" + Properties.Settings.Default.DataBase + ";Data Source=" + Properties.Settings.Default.DataSourse + ";User Id=" + Properties.Settings.Default.UserLog + ";Password= "******"SELECT bookway FROM BookLocation WHERE idBookLocation ='" + bookid + "'";

                using (MySqlDataReader reader = MyCommand.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        FName = reader.GetFieldValue <string>(0);
                        Properties.Settings.Default.BookFName = reader.GetFieldValue <string>(0);

                        Properties.Settings.Default.BookFName = FName;
                        Properties.Settings.Default.BookName  = bookname;

                        try
                        {
                            string path;
                            path       = "/";
                            ftpRequest = (FtpWebRequest)WebRequest.Create("ftp://" + _Host + path + "/" + FName);

                            ftpRequest.Credentials = new NetworkCredential(_UserName, _Password);
                            //команда фтп RETR
                            ftpRequest.Method    = WebRequestMethods.Ftp.DownloadFile;
                            ftpRequest.EnableSsl = _UseSSL;
                            //Файлы будут копироваться в кталог программы
                            FileStream downloadedFile = new FileStream(FName, FileMode.OpenOrCreate, FileAccess.ReadWrite);
                            ftpResponse = (FtpWebResponse)ftpRequest.GetResponse();
                            //Получаем входящий поток
                            Stream responseStream = ftpResponse.GetResponseStream();
                            //Буфер для считываемых данных
                            byte[] buffer = new byte[1024];
                            int    size   = 0;

                            while ((size = responseStream.Read(buffer, 0, 1024)) > 0)
                            {
                                downloadedFile.Write(buffer, 0, size);
                            }
                            ftpResponse.Close();
                            downloadedFile.Close();
                            responseStream.Close();
                            MyConnection.Close();
                            try
                            {
                                var command = MyConnection.CreateCommand();
                                command.CommandText = "INSERT INTO UserOpenBook" + " (idПользователя,idКниги,НазваниеКниги,ИмяКниги) VALUES (@idUser,@idBooks,@UserName,@BookName)";
                                MySqlParameter param = new MySqlParameter();
                                param.ParameterName = "@idUser";
                                param.Value         = Properties.Settings.Default.UserLogId;
                                param.MySqlDbType   = MySqlDbType.VarChar;
                                command.Parameters.Add(param);

                                param = new MySqlParameter();
                                param.ParameterName = "@idBooks";
                                param.Value         = bookid;
                                param.MySqlDbType   = MySqlDbType.VarChar;
                                command.Parameters.Add(param);

                                param = new MySqlParameter();
                                param.ParameterName = "@UserName";
                                param.Value         = Properties.Settings.Default.UserName;
                                param.MySqlDbType   = MySqlDbType.VarChar;
                                command.Parameters.Add(param);

                                param = new MySqlParameter();
                                param.ParameterName = "@BookName";
                                param.Value         = bookname;
                                param.MySqlDbType   = MySqlDbType.VarChar;
                                command.Parameters.Add(param);

                                MyConnection.Open();
                                command.ExecuteNonQuery();
                                MyConnection.Close();
                                Data.EventHanler(FName);
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.Message);
                            }

                            this.Close();
                        }

                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                        MyConnection.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #27
0
        public Cut GetCut(string kAge, string cGenoType, string cAnimal, string cCutIdentifier)
        {
            string query = $"SELECT * FROM vCut WHERE kAge = '{kAge}' AND cGenoType = '{cGenoType}' AND cAnimal = '{cAnimal}' AND cCutIdentifier = '{cCutIdentifier}' LIMIT 1";

            MySqlCommand cmd = new MySqlCommand(query, Connection)
            {
                CommandType = CommandType.Text
            };

            using (MySqlDataReader mySqlDataReader = cmd.ExecuteReader())
            {
                while (mySqlDataReader.Read())
                {
                    try
                    {
                        Cut cut = new Cut();

                        try
                        {
                            cut.Id = Convert.ToInt16(mySqlDataReader.GetFieldValue <UInt16>(0));
                        }
                        catch (Exception ex)
                        {
                            cut.Id = -1;
                        }

                        try
                        {
                            cut.Age = Convert.ToInt16(mySqlDataReader.GetFieldValue <byte>(1));
                        }
                        catch (Exception ex)
                        {
                            cut.Age = -1;
                        }

                        try
                        {
                            cut.Genotype = mySqlDataReader.GetFieldValue <string>(2);
                        }
                        catch (Exception ex)
                        {
                            cut.Genotype = "KO";
                        }

                        try
                        {
                            cut.Animal = mySqlDataReader.GetFieldValue <string>(3);
                        }
                        catch (Exception ex)
                        {
                            cut.Animal = "unknown";
                        }

                        try
                        {
                            cut.CutIdentifier = mySqlDataReader.GetFieldValue <string>(4);
                        }
                        catch (Exception ex)
                        {
                            cut.CutIdentifier = "unknown";
                        }

                        try
                        {
                            cut.Method = mySqlDataReader.GetFieldValue <string>(5);
                        }
                        catch (Exception ex)
                        {
                            cut.Method = "unknown";
                        }

                        try
                        {
                            if (DateTime.TryParse(mySqlDataReader.GetValue(6)?.ToString(), out var dateMeasurement))
                            {
                                cut.DateMeasurement = dateMeasurement;
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                                ex.Message);
                        }

                        try
                        {
                            if (DateTime.TryParse(mySqlDataReader.GetValue(7)?.ToString(), out var dateStaining))
                            {
                                cut.DateStaining = dateStaining;
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                                ex.Message);
                        }

                        try
                        {
                            cut.ZoomFactor = (float)Convert.ToDouble(mySqlDataReader.GetFieldValue <Single>(8));
                        }
                        catch (Exception ex)
                        {
                            cut.ZoomFactor = -1;
                        }

                        try
                        {
                            cut.Layer = mySqlDataReader.GetFieldValue <string>(9);
                        }
                        catch (Exception ex)
                        {
                            cut.Layer = "unknown";
                        }

                        try
                        {
                            cut.Note = mySqlDataReader.GetFieldValue <string>(10);
                        }
                        catch (Exception ex)
                        {
                            cut.Note = "unknown";
                        }

                        return(cut);
                    }
                    catch (Exception ex)
                    {
                        MessageBoxAutocloseWithButtons.Show(_waitTime, true, "Ok", "Cancel",
                                                            ex.Message);
                    }
                }

                mySqlDataReader.Close();
            }

            return(null);
        }
Пример #28
0
        private void EditUserForm_Load(object sender, EventArgs e)
        {
            sbyte checkadd     = 0;
            sbyte checkdelete  = 0;
            sbyte checkedit    = 0;
            sbyte checkcontrol = 0;

            try
            {
                string          Connect      = "Database=mydb;Data Source=sorok.pp.ua;User Id=root;Password="******"SELECT ИмяПользователя,Логин,Пароль FROM User WHERE idПользователя ='" + Properties.Settings.Default.UserId + "'";
                MyConnection.Open();
                using (MySqlDataReader reader = MyCommand.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        label4.Text = reader.GetFieldValue <string>(0);
                        label5.Text = reader.GetFieldValue <string>(1);
                        label6.Text = reader.GetFieldValue <string>(2);
                        MyConnection.Close();

                        try
                        {
                            MyCommand.CommandText = "SELECT bookadd,bookdelete,bookedit,usercontrol FROM UserRights WHERE idUserRights ='" + Properties.Settings.Default.UserId + "'";
                            MyConnection.Open();
                            using (MySqlDataReader reader1 = MyCommand.ExecuteReader())
                            {
                                if (reader1.Read())
                                {
                                    checkadd     = reader1.GetFieldValue <sbyte>(0);
                                    checkdelete  = reader1.GetFieldValue <sbyte>(1);
                                    checkedit    = reader1.GetFieldValue <sbyte>(2);
                                    checkcontrol = reader1.GetFieldValue <sbyte>(3);
                                    if (checkadd != 0)
                                    {
                                        CheckAdd.Checked = true;
                                    }
                                    else
                                    {
                                        CheckAdd.Checked = false;
                                    }
                                    if (checkdelete != 0)
                                    {
                                        CheckDelete.Checked = true;
                                    }
                                    else
                                    {
                                        CheckDelete.Checked = false;
                                    }
                                    if (checkedit != 0)
                                    {
                                        CheckEdit.Checked = true;
                                    }
                                    else
                                    {
                                        CheckEdit.Checked = false;
                                    }
                                    if (checkcontrol != 0)
                                    {
                                        CheckControl.Checked = true;
                                    }
                                    else
                                    {
                                        CheckControl.Checked = false;
                                    }
                                    MyConnection.Close();
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }