سلام دوستان من میخام یک فایل وورد یا عکس یا هر چیو بیارم تو برنامه از طریق openFile Dialog بعد اون در sqlServer
ذخیره کنم
dataType اون در بانک varBinaryهست
چه کدی باید بنویسم
سلام دوستان من میخام یک فایل وورد یا عکس یا هر چیو بیارم تو برنامه از طریق openFile Dialog بعد اون در sqlServer
ذخیره کنم
dataType اون در بانک varBinaryهست
چه کدی باید بنویسم
نمونه های زیادی توی سایت هست . جستجو کنید به نتیجه می رسید .
http://www.barnamenevis.org/sh...d.php?t=115600
این مقاله را هم ببینید بد نیست
http://www.afg-home.com/Topic.php?tid=7
فايلهاي word با عکس تفاوت چنداني ندارند .
ممنون من فکر می کردم فرق داره
حالا فایلهای دیگه هم همینطوره ؟
برای بازیابی فرق چندانی دارن با هم
مثلا یک فایل اکسل یا وورد برای بازیابی فرقی دارن یا مثل عکس میمونند.
و یک سوال دیگه من میخام اطلاعات یک دیتاگریو ویوو رو به یک فایل اکسل منتقل کنم و در اونجا در محیط اکسل نمایش بدهد
می تونی راهنماییم کنی
اصلا کدهاشو بلد نیستم
ممنون
در مورد بازیابی فایل از بانک هست میخام فایل رو با پسوندی doc در rich text box نمایش بدمکد HTML:SqlCommand myCommand = new SqlCommand(); SqlDataReader mydr; string strselect = "SELECT code_perseneli, vazatef FROM vazayef WHERE (code_perseneli = @code_perseneli) "; myCommand.CommandText = strselect; myCommand.CommandType = CommandType.Text; myCommand.Connection = form_main.Conection; myCommand.Parameters.Add("@code_perseneli", SqlDbType.BigInt); myCommand.Parameters[0].Value = Int64.Parse(txt_code_perseneli.Text); mydr = myCommand.ExecuteReader(); if (mydr.Read()) { byte[] arrfile = (byte[])mydr["vazatef"]; MemoryStream ms = new MemoryStream(arrfile); richTextBox1.Text = } mydr.Close();
جلوی rich text box چی باید بنویسم واقعا مخم هنگ کرده
برای عکس می نوشتیم
اینج باری فایل چی بنویسمکد HTML:image.fromstream(ms)
ممنون
کسی چیزی نمیدونه
من شدیدن بهش نیاز دارم؟
ممنون میشم کمک کنین
کسی اگر چیزی در مردش میدون کمک کنه من پروژه ام گیره همینه
یه راه ساده اینه که اول اطلاعات خونده شده از بانک رو توی یه فایل ذخیره کنی (بالطبع باید پسوند فایل هم توی بانک ذخیره شده باشه) بعد فایل رو باز کنی (با توجه به نوع فایل!!) ، زمان بسته شدن برنامه یا هر زمان دیگه ای هم این فایل رو پاک کنی.
salam mercc az rahnamaee
faghat ye soal in kar baeese afzonegi nemishe
yani ye baram to file zakhire beshe
intory ke koli hajmo migire
badesham age mitonid ye chan khat code sho vasam bezarid
thanks
توی این حالت چون بعد از تموم شدن کار با فایل ، اونو حذف میکنیم نمیشه گفت افزونگی رخ میده!
SqlCommand Cmd = new SqlCommand("Select FileValue,Suffix From TableName Where ...", Conn);
SqlDataReader Dr;
Conn.Open();
Dr = Cmd.ExecuteReader();
if (Dr.Read())
{
File.WriteAllBytes("Temp." + Dr["Suffix"], (byte[])Dr["FileValue"]);
}
//Open Temp File Via Respective SoftWare
بعد از تموم شدن کارت با فایل هم اونو پاک کن.
vaghty data az erver miad va etelaat dar server haste ke dar copmutere server hst
ijad file dar computere server anjam shavad
?
yani ye fileijad konam dar server ba va har clienty ke be server connetct mishe baraye bazyabi ye file dar server injad shavad va bad az vakeshi
file pak shavad
manzoreton in bood
?
agar baraton maghdore mishe code kamele in karo vasam benevisid
chon man ba fila ha ye kam moshkel daram
kheili az lotfeton mamnon misham
خواهشا فارسی بنویسید ، کلی به خودم فشار آوردم تا تونستم چیزی رو که نوشتید بخونم !!
اگه فقط بانک روی سرور قرار داره که مشکلی ندارید ، این دستور فایل رو روی کلاینت و توی دایرکتوری برنامه ذخیره میکنه.
کد دیگه ای نمیخواد! فقط با توجه به نوع فایل با برنامه مورد نیازش بازش کنید(که به کار با فایل ربطی نداره!)
ولی اگر برنامه شما یه برنامه سرور/کلاینتی (که مثلا با Socket نوشته شده) است و برنامه کلاینت درخواست کاری رو به سرور میفرسته و سرور یه سری کارها انجام میده و فقط نتیجه رو به کلاینت میفرسته که وضع فرق میکنه. کجا درست کردن فایل بستگی به این داره که کدوم برنامه قراره فایل رو باز کنه ، اگه کلاینت قرار باز کنه که بازم میشه سرور فایل رو بفرسته واسه کلاینت و روی کلاینت ذخیره بشه. ولی اگه قراره سرور فایل رو باز کنه فکر نمیکنم چاره ای جز درست کردن فایل روی سرور باشه.
مرسي كهجواب دادين
برنامه ما client/server ي هستش ،
برنامه به سرور وصل ميشه فايل رو تو بانك ذخيره ميكنه و بعد در گزارش گيري از بانك فايل رو بازيابي ميكنه كه تو بانك varbinary ذخيره ميشه به نر شما چه راه حلي بهتره
من در ابتداي تاپيك كد برنامرو گذاشتم كلا جواب نميده وباره ميزارم شما ببين كجاي كار ايراد داره
اين براي ذخيره
و اين هم براي بازيابي كه ميدونم كلي اشتباه توش هستکد HTML:private void button1_Click(object sender, EventArgs e) { try { if (openFileDialog2.ShowDialog() == DialogResult.OK) { rtxt_vazayef.Text = openFileDialog2.FileName; } } catch { MessageBox.Show(e.ToString()); } } private void aquaButton1_Click(object sender, EventArgs e) MemoryStream ms1 = new MemoryStream(); byte[] arrfile = ms1.GetBuffer(); ms1.Close(); myCommand.Parameters.Add("@vazatef", SqlDbType.VarBinary); myCommand.Parameters[i].Direction = ParameterDirection.Input; myCommand.Parameters[i].Value = arrfile; // myCommand.ExecuteNonQuery();
کد HTML:SqlCommand myCommand = new SqlCommand(); SqlDataReader mydr; string strselect = "SELECT code_perseneli, vazatef FROM vazayef WHERE (code_perseneli = @code_perseneli) "; myCommand.CommandText = strselect; myCommand.CommandType = CommandType.Text; myCommand.Connection = form_main.Conection; myCommand.Parameters.Add("@code_perseneli", SqlDbType.BigInt); myCommand.Parameters[0].Value = Int64.Parse(txt_code_perseneli.Text); mydr = myCommand.ExecuteReader(); if (mydr.Read()) { byte[] arrfile = (byte[])mydr["vazatef"]; MemoryStream ms = new MemoryStream(arrfile); StreamReader fileRead = new StreamReader(ms); string word = ""; word = fileRead.ReadToEnd(); richTextBox1.Text = word; } mydr.Close();
کد بازیابی به نظر مشکلی نداره ولی کد ذخیره فکر کنم ایراد داشته باشه
توی کد ذخیره یه MemoryStream تعریف کردید و بدون اینکه بافری واسش تعریف کنید درخواست بافر میکنید که توی این حالت مقدار Null رو بر میگردونه
برای حلش کد زیر رو امتحان کنید
private void aquaButton1_Click(object sender, EventArgs e)
byte[] arrfile = File.ReadAllBytes(rtxt_vazayef.Text);
myCommand.Parameters.Add("@vazatef", SqlDbType.VarBinary);
myCommand.Parameters[i].Direction = ParameterDirection.Input;
myCommand.Parameters[i].Value = arrfile;
//
myCommand.ExecuteNonQuery();
میخوام فایل ورد را بازیابی کنم و در سیستم ذخیره کنم چه کدی باید بنویسم ؟