在Asp.Net中从sqlserver检索(retrieve)图片
发布日期:2021-06-30 19:18:01 浏览次数:2 分类:技术文章

本文共 2110 字,大约阅读时间需要 7 分钟。

介绍:
这篇文章是我写的"如何把图片存入sqlServer中"的后续。我建议你在读这篇文章之前先看看那篇。
和存储图片相比,读取图片就要简单多了。输出一副图片我们要做的就是使用Response对象的BinaryWrite方法。
同时设置图片的格式。在这篇文章中,我们将讨论如何从SqlServer中检索图片。
并将学习以下几个方面的知识.
·如何设置图片的格式?
·如何使用BinaryWrite方法。
我们已经在Person表中存储了数据,那么我们就写些代码来从表中读取数据。
下面的代码检索了所有的值从Person表中。
从sqlserver中读取图片的代码.
Public Sub Page_Load(sender As Object, e As EventArgs)
        Dim myConnection As New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))
        Dim myCommand As New SqlCommand("Select * from Person", myConnection)
        Try
            myConnection.Open()
            Dim myDataReader as SqlDataReader
            myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
            Do While (myDataReader.Read())
                Response.ContentType = myDataReader.Item("PersonImageType")
                Response.BinaryWrite(myDataReader.Item("PersonImage"))
            Loop
            myConnection.Close()
            Response.Write("Person info successfully retrieved!")
        Catch SQLexc As SqlException
            Response.Write("Read Failed : " & SQLexc.ToString())
        End Try
    End Sub
看看他是怎么工作的?
上面的例子很简单。我们所作的就是执行一个sql语句,再循环读取所有的记录(looping through all the records).
在显示图片之前,我们先设置了图片的contentType,然后我们使用BinaryWrite方法把图片输出到浏览器。
源代码:
/// retriving.aspx
<%@ Page Language="vb" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<HTML>
  <HEAD>
    <title>Retrieving Image from the Sql Server</title>
        <script runat=server>
                        Public Sub Page_Load(sender As Object, e As EventArgs)
                                    ' Create Instance of Connection and Command Object
                                    Dim myConnection As New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))
                                    Dim myCommand As New SqlCommand("Select * from Person", myConnection)
                                     Try
                                               myConnection.Open()
                                                Dim myDataReader as SqlDataReader
                                                myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
                                         
                                               Do While (myDataReader.Read())
                                                            Response.ContentType = myDataReader.Item("PersonImageType")
                                                            Response.BinaryWrite(myDataReader.Item("PersonImage"))
                                               Loop                                            
                                                myConnection.Close()
                                                Response.Write("Person info successfully retrieved!")
                                    Catch SQLexc As SqlException
                                                Response.Write("Read Failed : " & SQLexc.ToString())
                                    End Try
                        End Sub    
    </script>
  </HEAD>
  <body style="font: 10pt verdana">
  </body>
</HTML>

转载地址:https://linuxstyle.blog.csdn.net/article/details/212012 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:如何在ASP.Net 中把图片存入数据库
下一篇:怎么样给下拉框加载背景色

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月12日 15时29分45秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章