تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تحويل كود حفظ الى كلاس عام
#1
السلام عليكم ورحمة الله تعالى وبركاته
الى خبراء ااسيكول
 هذا كود حفظ وتعديل البيانات من الداتا فيو مباشرا
كود :
private void button1_Click(object sender, EventArgs e)
       {
           for (int i = 0; i < dgvEmployee.Rows.Count - 1; i++)
           {
               try
               {
                   using (SqlConnection sqlCon = new SqlConnection(@"server=.; Database=Accounts; Integrated Security=true"))
                   {
                       String sqlstrdd = "select * from Employee where EmployeeID='" + dgvEmployee.Rows[i].Cells[0].Value + "'";
                       System.Data.SqlClient.SqlDataAdapter dt1 = new System.Data.SqlClient.SqlDataAdapter(sqlstrdd, sqlCon);
                       DataTable dset1 = new DataTable();
                       dset1.Clear();
                       dt1.Fill(dset1);
                       //----------------------------------------
                       SqlCommand sqlCmd = new SqlCommand();
                       sqlCmd.CommandType = CommandType.Text;
                       string SqlStr = string.Empty;
                       if (dset1.Rows.Count == 0)//Insert
                       {
                           SqlStr = "INSERT INTO Employee(Name,PositionID,Office,Age)VALUES (@Name,@PositionID,@Office,@Age)";
                           sqlCmd = new SqlCommand(SqlStr, sqlCon);
                           sqlCmd.Parameters.AddWithValue("@Name", dgvEmployee.Rows[i].Cells[1].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[1].Value.ToString());
                           sqlCmd.Parameters.AddWithValue("@PositionID", Convert.ToInt32(dgvEmployee.Rows[i].Cells[2].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[2].Value.ToString()));
                           sqlCmd.Parameters.AddWithValue("@Office", dgvEmployee.Rows[i].Cells[3].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[3].Value.ToString());
                           sqlCmd.Parameters.AddWithValue("@Age", Convert.ToInt32(dgvEmployee.Rows[i].Cells[4].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[4].Value.ToString()));
                       }
                       else//update
                       {
                           SqlStr = "UPDATE Employee SET Name = @Name,PositionID = @PositionID,Office = @Office,Age = @Age WHERE EmployeeID = @EmployeeID";
                           sqlCmd = new SqlCommand(SqlStr, sqlCon);
                           sqlCmd.Parameters.AddWithValue("@EmployeeID", Convert.ToInt32(dgvEmployee.Rows[i].Cells[0].Value));
                           sqlCmd.Parameters.AddWithValue("@Name", dgvEmployee.Rows[i].Cells[1].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[1].Value.ToString());
                           sqlCmd.Parameters.AddWithValue("@PositionID", Convert.ToInt32(dgvEmployee.Rows[i].Cells[2].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[2].Value.ToString()));
                           sqlCmd.Parameters.AddWithValue("@Office", dgvEmployee.Rows[i].Cells[3].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[3].Value.ToString());
                           sqlCmd.Parameters.AddWithValue("@Age", Convert.ToInt32(dgvEmployee.Rows[i].Cells[4].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[4].Value.ToString()));
                       }
                       sqlCon.Open();
                       sqlCmd.ExecuteNonQuery();
                       sqlCon.Close();
                   }
               }
               catch (Exception ex)
               {
                   MessageBox.Show(ex.Message.ToString());
               }
           }
           PopulateDataGridView();
           MessageBox.Show("Win............");
       }
لدي المشروع مستخدم به عدد كبير من الداتا فيو ويتم حفظ وتعديل البيانات من خلاال هذا الكود مع تغيير اسماء الجداول واسماء الحقول
ولذلك بقوم بنكرار هذا الكود بعدد كل داتا فيو  
لعدم تكرار الكود هل من الممكن عمل كلاس على مسنوى المشروع الغرض منه تخفيف هذا الكود بحيث اقوم بوضع اسم الجدول والحقول داخل مفتاح حفظ البيانات
يارب تكون الفكره وضحت
ولم منى جزيل الشكر والاحترام
يخفف هذا الكو
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [تم الحل] مشكلة فى تحويل مشروع تفقيط من vb.net الى #C maxruined 4 112 16-07-19, 07:06 PM
آخر رد: asemshahen5
  عمل كلاس لتعبئه كمبو بوكس داخل الداتا فيو amonem 30 644 13-07-19, 04:50 PM
آخر رد: asemshahen5
  تحويل مشروع تكبير الفورم من vb الى #c hglogtd 4 130 25-06-19, 04:39 AM
آخر رد: wared
  تحويل عدد ساعات العمل من عشري (٢٫٧٥) الى - "HH:MM" في التقارير - تم الحل Rabeea Qbaha 7 200 16-06-19, 01:48 PM
آخر رد: elgokr
  [C#.NET] تحويل اكواد لانشاء برنامج aljzazy 1 228 02-02-19, 05:55 PM
آخر رد: thevirus
  تحويل شفره ال ى vb.net vb2010 1 295 06-12-18, 01:26 AM
آخر رد: dasktop
  [سؤال] كيف يتم تحويل اسئلة رياضيات الى كود فيجوال بيسك راغب عبد اللطيف 2 331 02-11-18, 11:14 PM
آخر رد: Eng27
  تحويل الاحرف الكبيره الى صغيره A - a textbox الـ ـجارح 3 477 06-09-18, 11:23 PM
آخر رد: عابر سبيل 2
  [C#.NET] تحويل كود باتش إلى سي شارب كونسول Anis Gladiator 0 347 18-01-18, 10:16 AM
آخر رد: Anis Gladiator
  طريقة تحويل اي ملف صوتي إلى نص مكتوب adel500 0 377 07-11-17, 01:39 AM
آخر رد: adel500

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم