原創|使用教程|編輯:龔雪|2014-05-13 09:23:47.000|閱讀 439 次
概述:本文主要介紹如何利用利用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@ke049m.cn