الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

قراءة Blob من الاوراكل في Asp.net

بدأه ابراهيم1986 في 14 أبريل 2008 · 3 رد · 570 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم..

انا عملت طريقة بحيث اقرأ ملف blob على مرحلتين .. الاولى يتم تنزيل الملف في path محدد ومن ثم اذا اردت تحميل الملف احمله من هذا الباث..

السبب في ذلك انني لم اجد طريقة للإعطاء الحرية للمستخدم لتحديد هذا الباث...

السؤال ..

1- هل هناك طريقة لعمل OpenFileDialog في asp.net بحيث يكون هناك الحرية للمستخدم لحفظ الملف في اي مكان يريد؟

2- احتاج لطريقة لفتح ملف Binary او بالمعنى الاخر Blob بشكل مباشر من قاعدة البيانات بحيث اذا ضغطت على لينك يتم فتح شاشة الحفظ ومن ثم يختار المستخدم المكان الذي يريد حفظ الملف فيه.. من غير تنزيل الملف على السيرفر ؟

عندي كود لما عملته ولكنه ضمن كوود كبير جدا...وانا محتار اعطيكم اياه ام لا...اخشى ان لا احد يستطيع فهمه...اللغة المستخدمة هي سي شارب c#

الرجاء من لديه حل لهذه المشكلة مساعدتي..بحثت على النت وعلى ما يبدو انها مشكلة مشهورة ولكن الى الان لم اصل لما اريد.

تم تعديل هذه المشاركة بواسطة ابراهيم1986 في 14 أبريل 2008 في 21:47

#2

الحل هو عمل صفحة خاصة تقوم بتحميل البايناري الخاص بالـblob مباشرة إلى الـweb response و إخبار المتصفح بأن يتعامل مع هذه الصفحة كمرفق attachment.

الخطوات (باختصار)

1. تحميل الـblob من قاعدة البيانات إلى memory stream

2. تفريغ الـweb response ثم كتابة الـmemory stream إلى الـweb response

3. تحديد الـhttp header التالي

Response.AddHeader("Content-Disposition", "attachment; filename=foo.xls")

حيث foo.xls هو اسم الملف

مقالة كاملة

http://www.c-sharpcorner.com/UploadFile/jh...mMemStream.aspx

#3

أو بإمكانك إستخدام الـOracle Types وتعريف متغير من النوع Blob ومن ثم تحويله وعرضه إلى ما تريد .

الطريقة بالتفصيل ستجدها بموقع أوراكل .

How to Read Write Image with Oracle Blob Using ODP.Net

دمتم بود .

#4
اقتباس
الحل هو عمل صفحة خاصة تقوم بتحميل البايناري الخاص بالـblob مباشرة إلى الـweb response و إخبار المتصفح بأن يتعامل مع هذه الصفحة كمرفق attachment.

الخطوات (باختصار)

1. تحميل الـblob من قاعدة البيانات إلى memory stream

2. تفريغ الـweb response ثم كتابة الـmemory stream إلى الـweb response

3. تحديد الـhttp header التالي

كودResponse.AddHeader("Content-Disposition", "attachment; filename=foo.xls")

حيث foo.xls هو اسم الملف

مقالة كاملة

http://www.c-sharpcorner.com/UploadFile/jh...mMemStream.aspx

شكرا لك اخ System Down على ردك..لقد ساعدني كثيرا .. وفعلا لقد استطعت حل المشكلة ..بحيث استطعت كتابة ال Blob في memory stream

وفتحها مباشرة ( بعد تحويل memory stream الى binary array ) باستخدام امر

Respons.Writebinary.

سوف اقوم بوضع موضوع جديد حول هذا الامر لكي يستفيد الجميع.

والشكر ايضا موصول الى الاخ IGBSpeed.

مواضيع مشابهة