Most of the web applications have a lot of images used in it. These images are usually stored in a web server folder and they are accessed by giving the relative path to the file with respect to the root folder of the website. .Net being the platform for distributed application now, ASP.Net can be used to store images that are small to be stored in a database like SQL Server 2000 and later versions. For this purpose the SQL Server database provides a data type called "image" which is used to store images in the database.
To access these images stored in the database we will be using the ADO.Net classes. To find out how to insert and retrieve an image in to the SQL Server database, you can create a .aspx page which can have a HTMLInputFile control which is used to select the image file that is to be saved in the database. You can also create a textbox control in which you can add the image name or some comment or an image id for the image saved. Use a button control to upload the image to the database. Namespaces like System.Data.SqlClient, System.Drawing, System.Data, System.IO, and System.Drawing.Imaging are used in this task.
In the OnClick property of the button you can write the following code to upload an image to the database.
// create a byte[] for the image file that is uploaded
int imagelen = Upload.PostedFile.ContentLength;
byte[] picbyte = new byte[imagelen];
Upload.PostedFile.InputStream.Read (picbyte, 0, imagelen);
// Insert the image and image id into the database
SqlConnection conn = new SqlConnection (@"give the connection string
here...");
try
{
conn.Open ();
SqlCommand cmd = new SqlCommand ("insert into ImageTable "
+ "(ImageField, ImageID) values (@pic, @imageid)",
conn);cmd.Parameters.Add ("@pic", picbyte);
cmd.Parameters.Add ("@imageid", lblImageID.Text);
cmd.ExecuteNonQuery ();
}
finally
{
conn.Close ();
}
You can also write the above code in a function and call that function in the OnClick event of the upload button. The code given above performs the following steps in the process of inserting an image into the database.
1. Get the content length of the image that is to be uploaded
2. Create a byte[] to store the image
3. Read the input stream of the posted file
4. Create a connection object
5. Open the connection object
6. Create a command object
7. Add parameters to the command object
8. Execute the sql command using the ExecuteNonQuery method of the command object
9. Close the connection object
To retrieve the image from the SQL Database you can perform the following steps.
1. Create a MemoryStream object. The code can be something like, MemoryStream mstream = new MemoryStream ();
2. Create a Connection object
3. Open the connection to the database
4. Create a command object to execute the command to retrieve the image
5. Use the command object's ExecuteScalar method to retrieve the image
6. Cast the output of the ExecuteScalar method to that of byte[] byte[] image = (byte[]) command.ExecuteScalar ();
7. Write the stream mstream.Write (image, 0, image.Length);
8. Create a bitmap object to hold the stream Bitmap bitmap = new Bitmap (stream);
9. Set the content type to "image/gif" Response.ContentType = "image/gif";
10. Use the Save method of the bitmap object to output the image to the OutputStream. bitmap.Save (Response.OutputStream, ImageFormat.Gif);
11. Close the connection
12. Close the stream mstream.Close();
Using the above steps you can retrieve and display the image from the database to the web page.
You can use these algorithms and take advantage of the "image" data type available in the SQLServer 2000 database to store small images that correspond to a particular record in the table of the database. This method of storing avoids the tedious task of tracking the path of the web folder if the images are stored in a web folder.
Visit a guide to .net for a complete introduction to .NET framework. Learn about ASP.NET, VB.NET, C# and other related technologies.
efficient cleaning crew Lake Forest ..This is the third in a series of articles highlighting... Read More
Music lovers have been carrying around radios and other bulky... Read More
While most small businesses really do need to find a... Read More
Just The Facts, Ma'mPalm pilots are all the rage now.... Read More
Cookies, not the kind that Mom makes, but the computer... Read More
First things first, what is Firefox? Well, it's a browser.... Read More
Maybe you always wanted a feature that hasn't been available... Read More
I met an entrepreneur who hole heartedly disagree with an... Read More
Have you ever thought about building your own computer system?... Read More
Having two operating systems is not as difficult as many... Read More
Addressing a D2X Digital SLRCoolpix 8800 search, this article provides... Read More
ComputersBusinesses and individuals alike have all grown to rely on... Read More
What led them to this choice, as all four studios... Read More
When you think of a help desk, what do you... Read More
Selecting a TV isn't as easy as it used to... Read More
Not sure what Windows registry is or how it works?... Read More
If you ask most people what frustrates them most about... Read More
Ad Blocking is getting to be a common sport on... Read More
Buying Your PCBuying a PC that's right for you and... Read More
Nothing is worse than having to negotiate all kinds of... Read More
I have a p3 500MHz PC with 128MB RAM, 10.2... Read More
Feeling overwhelmed in selecting a new TV? With all the... Read More
I have always been interested in computers, but in the... Read More
Spyware is the software that collects information about your online... Read More
Do you know how many fonts are currently installed on... Read More
green cleaning service Deerfield ..Simone is exasperated. She has to work on her university... Read More
Wouldn't you be shocked to find that your personal sensitive... Read More
About mail-mergingMail-merging is the process of merging variable data and... Read More
This tip is on sharing files and folders on a... Read More
Get started creating web pages using text files and HTML... Read More
Although there are many things that can affect the performance... Read More
Cameras: still known for taking pictures but assumed as digital... Read More
I've worked my way from the CCNA to the CCIE,... Read More
In the first part of this home lab tutorial, CCNA... Read More
I recently took a good look at what was keeping... Read More
The battle is heating up for market share, home movie... Read More
I do a holiday letter every year and send them... Read More
For six years, my Samsung PC 13.8 inch SyncMaster conventional... Read More
Peoples' private information needs to stay private, even after it... Read More
For many people the computer industry is a seeming unsolvable... Read More
This is the third in a series of articles highlighting... Read More
Lost & Found for the 21st CenturyIn today's hectic world... Read More
After another security hole recently surfaced in Microsoft's Windows operating... Read More
The Cisco Certified Network Associate (CCNA) Certification is meant for... Read More
MP3 players are Hot! Playing music has come a long... Read More
It's hard enough as it is these days to get... Read More
In the 1950's and 1960's Polaroid's instant cameras were all... Read More
In the early days, Personal Digital Assistants (PDAs) were not... Read More
Digital cameras ratings are great tools for deciding which camera... Read More
Plasma and LCD TVs are the latest trend in home... Read More
Personal Technology |