PDA

View Full Version : ذخیره فایل داخل دیتابیس



r_mehrizi
پنج شنبه 03 تیر 1389, 09:58 صبح
من فایل را از طریق uploadfile می گیرم و میخوام داخل دیتابیس اون را ذخیره کنم کدهای مربوط به اون را نمی دونم چه شکلی هست سرچ هم زدم به نتیجه ای نرسیدم خیلی ضروری هستش خواهشا راهنمایی کنید

reza4359
پنج شنبه 03 تیر 1389, 10:21 صبح
شما میخواید فایل عکس رو در دیتایس ذخیره کنید یا چیز دگیه برای مثال برای ذخیره عکس در دیتابیس این کد رو بنویسید:

}
string img;
img=appdomain.currentdomain.basedirectory.tostring () +"~//img" textbox1.text + 'jpg';
fileupload1.mappath.saveas(img);
textbox2.text="//img//" + textbox1.text.tostring() + 'jpg';
();sqldatasource1.insert
{

r_mehrizi
پنج شنبه 03 تیر 1389, 10:30 صبح
شما میخواید فایل عکس رو در دیتایس ذخیره کنید یا چیز دگیه برای مثال برای ذخیره عکس در دیتابیس این کد رو بنویسید:

}
string img;
img=appdomain.currentdomain.basedirectory.tostring () +"~//img" textbox1.text + 'jpg';
fileupload1.mappath.saveas(img);
textbox2.text="//img//" + textbox1.text.tostring() + 'jpg';
();sqldatasource1.insert
{



میشه در مورد این کد بیشتر توضیح بدید. من فایل را با استفاده از fieupload می گیرم
نوع فیلد فایل شما در جدول از چه نوعی است؟

Alireza_Salehi
پنج شنبه 03 تیر 1389, 10:37 صبح
شما می توانی هر نوع فایل را در یک فیلد از نوع باینری (binary) در دیتابیس ذخیره کنید کافیست فایل مورد نظر را به یک آرایه از byte تبدیل کنید و در دیتابیس ذخیره کنید.

کنترل fileupload یک ویژگی به نام InputStream دارد که می توانید جهت تبدیل فایل مورد نظر ب آرایه ای از بایت از آن استفاده کنید.

reza4359
پنج شنبه 03 تیر 1389, 11:04 صبح
میشه در مورد این کد بیشتر توضیح بدید. من فایل را با استفاده از fieupload می گیرم
نوع فیلد فایل شما در جدول از چه نوعی است؟
نوع فیلد رو nvarchar بگیرید چون شما آدرس فایل آپلود رو داخل یک تکس باکس که در خط دوم نوشتم میریزید و (visable این تکس باکس رو هم فالس کنید ) در خط اول یک متغیر از نوع string تعریف کردم و در خط دوم نام فایل رو با تکس باکسی که شما اونو کلید اصلی تعریف کردیدهم نام میکنه برای اینکه عکس تکراری وارد نشه و در خط سوم مسیر ذخیره فایل تعیین میشه و در خط چهارم هم آدرس فایل به تکس باکسی که فالسش کردی میره و در نهایت هم در دیتابیس ذخیره میشه. اگه سوالی بود در خدمتم

r_mehrizi
پنج شنبه 03 تیر 1389, 11:47 صبح
فایل را بدین صورت در جدول ذخیره کردم چطوری می تونم عکس را از جدول بخونم و به کاربر نشون بدم


public static byte[] UpLoadImageFile(FileUpload info)
{
try
{
byte[] bytes = new byte[info.PostedFile.ContentLength];
info.PostedFile.InputStream.Read(bytes, 0, info.PostedFile.ContentLength);
return bytes;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}

reza4359
پنج شنبه 03 تیر 1389, 12:04 عصر
فایل را بدین صورت در جدول ذخیره کردم چطوری می تونم عکس را از جدول بخونم و به کاربر نشون بدم


publicstaticbyte[] UpLoadImageFile(FileUpload info)
{
try
{
byte[] bytes = newbyte[info.PostedFile.ContentLength];
info.PostedFile.InputStream.Read(bytes, 0, info.PostedFile.ContentLength);
return bytes;
}
catch (Exception ex)
{
thrownewException(ex.Message);
}
}

شما این کدی که نوشتم رو در باتونی که اطلاعاتتون رو ذخیره میکنه قرار بدید و کنترلها رو هم با کد تطبیق بدید. فرض بر اینه که شما یک کلید اصلی در جدول دارید و یک کنترل فایل آپلود و دو تکس باکس و یک باتون... من دقیقا نمیدونم شما میخواید چطوری اطلاعتتون رو به دیتابیس بدید و آیا کاربر میخواد با سرچ در دیتابیس اطلاعات رو ببینه یا به طریق دیگه ایی