28_ذخیره کردن یک تصویر
توضیحات : ابتدا این دستور Stored Procedure را در Sql اجرا نمائید
USE [SampleDB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Pictures](
[ID_Picture] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[Picture] [image] NULL,
CONSTRAINT [PK_Pictures] PRIMARY KEY CLUSTERED
(
[ID_Picture] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
سپس در فرم یک OpenFileDialog ، pictureBox1 ، textBox1 ، label1 و دو button اضافه نمائید
و ظاهر فرم را به شکل زیر طراحی کنید
Untitled.png
سپس
using System.IO;
using System.Data.SqlClient;
private void buttonPath_Click(object sender, EventArgs e)
{
OpenFileDialog dialog1 = openFileDialog1;
dialog1.InitialDirectory = @"C:\";
dialog1.Filter = "All Files|*.*|Bitmaps|*.bmp|GIFs|*.gif|JPEGs|*.jpg";
dialog1.FilterIndex = 2;
dialog1 = null;
if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
PictureBox box1 = pictureBox1;
box1.Image = Image.FromFile(openFileDialog1.FileName);
box1.SizeMode = PictureBoxSizeMode.CenterImage;
box1.BorderStyle = BorderStyle.Fixed3D;
box1 = null;
}
}
private void buttonSave_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
MessageBox.Show("نام را ئارد نمائید");
}
else
{
MemoryStream stream1 = new MemoryStream();
try
{
pictureBox1.Image.Save(stream1, pictureBox1.Image.RawFormat);
}
catch (Exception exception3)
{
MessageBox.Show("تصویر مناسب انتخاب نمائید");
return;
}
byte[] buffer1 = stream1.GetBuffer();
stream1.Close();
string strConnection = @"Data Source = ARASH-PC\ARASH; Initial Catalog = SampleDB; User Id = sa; Password = 1;";
SqlConnection connection1 = new SqlConnection(strConnection);
connection1.Open();
string text1 = "INSERT INTO" + " Pictures(Name,Picture) VALUES (@Name,@Picture)";
SqlCommand command1 = new SqlCommand(text1, connection1);
SqlCommand command2 = command1;
command2.Parameters.Add(new SqlParameter("@Name", SqlDbType.NVarChar, 50)).Value = textBox1.Text;
command2.Parameters.Add(new SqlParameter("@Picture", SqlDbType.Image)).Value = buffer1;
command2 = null;
command1.ExecuteNonQuery();
connection1.Close();
}
}
private void Form6_Load(object sender, EventArgs e)
{
textBox1.Text = "";
pictureBox1.BorderStyle = BorderStyle.FixedSingle;
}
لطفا پست نزنید 
در صورتی که در خصوص هر آنچه که در این تاپیک مطرح شده سوالی دارید می توانید آن را در تاپیک سوالهای مربوط به تاپیک آموزش برنامه نویسی پایگاه داده به همراه مثالهای کاربردی مطرح کنید
مشاهده لیست
مشاهده نکته های سی شارپ ...