原創|使用教程|編輯:龔雪|2014-05-13 09:23:47.000|閱讀 425 次
概述:本文主要介紹如何利用利用C#和VB.NET從數據庫中讀寫DotImage圖像。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
.Net圖像處理控件Atalasoft DotImage具有流媒體功能,可與ADO.NET共同使用以直接讀取數據庫中的圖像,無需保存至臨時文件。下面代碼片段演示了如何利用C#和VB.NET從數據庫中讀寫圖像。
寫入數據庫:
C#
private void SaveToSqlDatabase(AtalaImage image) { SqlConnection myConnection = null; try { // Save image to byte array. byte[] imagedata = image.ToByteArray(new Atalasoft.Imaging.Codec.JpegEncoder(75)); // Create the SQL statement to add the image data. myConnection = new SqlConnection(CONNECTION_STRING); SqlCommand myCommand = new SqlCommand ("INSERT INTO Atalasoft_Image_Database (Caption, ImageData) VALUES ('" + txtCaption.Text + "', @Image)", myConnection); SqlParameter myParameter = new SqlParameter("@Image", SqlDbType.Image, imagedata.Length); myParameter.Value = imagedata; myCommand.Parameters.Add(myParameter); // Open the connection and execture the statement. myConnection.Open(); myCommand.ExecuteNonQuery(); } finally { myConnection.Close(); } }
Visual Basic.NET
Private Sub SaveToSqlDatabase(ByVal image As AtalaImage) Dim myConnection As SqlConnection = Nothing Try ' Save image to byte array. Dim imagedata() As Byte = image.ToByteArray(New Atalasoft.Imaging.Codec.JpegEncoder(75)) ' Create the SQL statement to add the image data. myConnection = New SqlConnection(CONNECTION_STRING) Dim myCommand As SqlCommand = New SqlCommand ("INSERT INTO Atalasoft_Image_Database (Caption, ImageData) VALUES ('" + txtCaption.Text + "', @Image)", myConnection) Dim myParameter As SqlParameter = New SqlParameter("@Image", SqlDbType.Image, imagedata.Length) myParameter.Value = imagedata myCommand.Parameters.Add(myParameter) ' Open the connection and execture the statement. myConnection.Open() myCommand.ExecuteNonQuery() Finally myConnection.Close() End Try End Sub
從數據庫中讀取:
C#
private AtalaImage OpenFromSqlDatabase() { SqlConnection myConnection = null; try { // Establish connection and SELECT statement. myConnection = new SqlConnection(CONNECTION_STRING); SqlCommand myCommand = new SqlCommand ("SELECT ImageData FROM Atalasoft_Image_Database WHERE Caption = '" + txtCaption.Text + "'", myConnection); myConnection.Open(); // Get the image from the database. byte[] imagedata = (byte[])myCommand.ExecuteScalar(); if (imagedata != null) { AtalaImage image = AtalaImage.FromByteArray(imagedata); return image; } else { MessageBox.Show("Image does not exist in database."); return null; } } finally { myConnection.Close(); } }
Visual Basic .NET
Private Function OpenFromSqlDatabase() As AtalaImage Dim myConnection As SqlConnection = Nothing Try ' Establish connection and SELECT statement. myConnection = New SqlConnection(CONNECTION_STRING) Dim myCommand As SqlCommand = New SqlCommand ("SELECT ImageData FROM Atalasoft_Image_Database WHERE Caption = '" + txtCaption.Text + "'", myConnection) myConnection.Open() ' Get the image from the database. Dim imagedata() As Byte = CType(myCommand.ExecuteScalar(), Byte()) If (Not imagedata Is Nothing) Then Dim image As AtalaImage = AtalaImage.FromByteArray(imagedata) Return image Else MessageBox.Show("Image does not exist in database.") Return Nothing End If Finally myConnection.Close() End Try End Function
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn