منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مطلوب التعديل على الكود- مشكلة في حفظ الصوره من داتا جريد الى قاعدة سيكوال سيرفر
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم  :
لدي الكود التالي لحفظ صوره من ال(datagridview) الى قاعدة البيانات وهذا الكود يعمل بشكل جيد عندما تكون الصوره موجودة  ، اما في حال كانت الصوره غير موجوده في الداتا جريد يحدث خطا
ما الطريقه التي يمكن تعديل الكود لحفظ الصوره في حال كانت موجوده في الداتا جريد  وعدم حفظها في حال كانت الخليه الخاصة بالصوره في الداتا جريد فارغه

 Dim ms As New MemoryStream()
                    Dim p As New SqlParameter("@item_pic", SqlDbType.Image)
                    dgv_unit.Rows(i).Cells(11).Value.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
                    Dim picture() As Byte = ms.ToArray
                    .Parameters.AddWithValue("@item_pic", SqlDbType.Image).Value = picture


ولكم مني جزيل الشكر
(26-09-22, 03:33 PM)momani33 كتب : [ -> ]السلام عليكم  :
لدي الكود التالي لحفظ صوره من ال(datagridview) الى قاعدة البيانات وهذا الكود يعمل بشكل جيد عندما تكون الصوره موجودة  ، اما في حال كانت الصوره غير موجوده في الداتا جريد يحدث خطا
ما الطريقه التي يمكن تعديل الكود لحفظ الصوره في حال كانت موجوده في الداتا جريد  وعدم حفظها في حال كانت الخليه الخاصة بالصوره في الداتا جريد فارغه

 Dim ms As New MemoryStream()
                    Dim p As New SqlParameter("@item_pic", SqlDbType.Image)
                    dgv_unit.Rows(i).Cells(11).Value.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
                    Dim picture() As Byte = ms.ToArray
                    .Parameters.AddWithValue("@item_pic", SqlDbType.Image).Value = picture


ولكم مني جزيل الشكر


وعليكم السلام ورحمة الله

جرب الكود التالي :
كود :
  Dim ms As New MemoryStream()
       Dim p As New SqlParameter("@item_pic", SqlDbType.Image)

       If dgv_unit.Rows(i).Cells(11).Value <> "" Then

           dgv_unit.Rows(i).Cells(11).Value.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
           Dim picture() As Byte = ms.ToArray
           .Parameters.AddWithValue("@item_pic", SqlDbType.Image).Value = picture

       Else

           MsgBox("الصورة غير موجودة")

       End If
(27-09-22, 01:19 AM)أبو خالد الشكري كتب : [ -> ]
(26-09-22, 03:33 PM)momani33 كتب : [ -> ]السلام عليكم  :
لدي الكود التالي لحفظ صوره من ال(datagridview) الى قاعدة البيانات وهذا الكود يعمل بشكل جيد عندما تكون الصوره موجودة  ، اما في حال كانت الصوره غير موجوده في الداتا جريد يحدث خطا
ما الطريقه التي يمكن تعديل الكود لحفظ الصوره في حال كانت موجوده في الداتا جريد  وعدم حفظها في حال كانت الخليه الخاصة بالصوره في الداتا جريد فارغه

 Dim ms As New MemoryStream()
                    Dim p As New SqlParameter("@item_pic", SqlDbType.Image)
                    dgv_unit.Rows(i).Cells(11).Value.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
                    Dim picture() As Byte = ms.ToArray
                    .Parameters.AddWithValue("@item_pic", SqlDbType.Image).Value = picture


ولكم مني جزيل الشكر


وعليكم السلام ورحمة الله

جرب الكود التالي :
كود :
  Dim ms As New MemoryStream()
       Dim p As New SqlParameter("@item_pic", SqlDbType.Image)

       If dgv_unit.Rows(i).Cells(11).Value <> "" Then

           dgv_unit.Rows(i).Cells(11).Value.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
           Dim picture() As Byte = ms.ToArray
           .Parameters.AddWithValue("@item_pic", SqlDbType.Image).Value = picture

       Else

           MsgBox("الصورة غير موجودة")

       End If

تظهر رسالة الخطا في المرفق
جرب الكود التالي ، إن شاء الله ينجح :
كود :
 Dim ms As New MemoryStream()
   Dim p As New SqlParameter("@item_pic", SqlDbType.Image)

   If dgv_unit.Rows(i).Cells(11).Value.ToString <> vbNullString Then

          dgv_unit.Rows(i).Cells(11).Value.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
          Dim picture() As Byte = ms.ToArray
   .Parameters.AddWithValue("@item_pic", SqlDbType.Image).Value = picture

   Else

          MsgBox("الصورة غير موجودة")

      End If
لم ينجح الكود واستمرار ظهور رسالة الخطا
وعليكم السلام ورحمة الله وبركاته 


ضع كودك بين دفتي هذا الشرط :

كود :
       If Not (DataGridView1.Rows(i).Cells(11).Value) Is Nothing Then

           ' هنا
       End If