Sql Table
CREATE TABLE [dbo].[tblImages](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](255) NOT NULL,
[size] [int] NOT NULL,
[ImageData] [varbinary](max) NOT NULL,
PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
HTML to upload file into table
<div class="container" >
<div class="row " >
<div class="col-xs-12 col-sm-4 col-sm-offset-4">
<asp:FileUpload ID="FileUpload1" runat="server" CssClass="btn btn-danger" />
<br />
<br />
<asp:Button ID="btnUpload" runat="server" Text="Upload" CssClass="btn btn-danger" OnClick="btnUpload_Click" />
<br />
<br />
<asp:Label ID="lblMessage" runat="server"></asp:Label>
<br />
<br />
</div>
</div>
</div>
Code behind to upload file in binary form
protected void btnUpload_Click(object sender, EventArgs e)
{
HttpPostedFile postedFile = FileUpload1.PostedFile;
string fileName = Path.GetFileName(postedFile.FileName);
string fileExtension = Path.GetExtension(fileName);
int fileSize = postedFile.ContentLength;
if (fileExtension.ToLower()== ".jpg" || fileExtension.ToLower() == ".bmp" || fileExtension.ToLower() == ".gif"
|| fileExtension.ToLower() == ".png")
{
Stream stream = postedFile.InputStream;
BinaryReader binaryReader = new BinaryReader(stream);
byte[] bytes = binaryReader.ReadBytes((int)stream.Length);
string cs = ConfigurationManager.ConnectionStrings["DB_Upload"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand("spUploadImage", con);
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter paramName = new SqlParameter()
{
ParameterName="@Name",
Value=fileName
};
cmd.Parameters.Add(paramName);
SqlParameter paramSize = new SqlParameter()
{
ParameterName = "@size",
Value= fileSize
};
cmd.Parameters.Add(paramSize);
SqlParameter paramImageData = new SqlParameter()
{
ParameterName = "@ImageData",
Value = bytes
};
cmd.Parameters.Add(paramImageData);
SqlParameter paramNewId = new SqlParameter()
{
ParameterName = "@NewId",
Value = -1,
Direction = ParameterDirection.Output
};
cmd.Parameters.Add(paramNewId);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
lblMessage.Visible = true;
lblMessage.Text = "image uploaded successful";
lblMessage.ForeColor = System.Drawing.Color.Green;
}
}
else
{
lblMessage.Visible = true;
lblMessage.Text = "Only images (.jpg ,gif, .bmp,.png) can be store";
lblMessage.ForeColor = System.Drawing.Color.Red;
}
}