65.9K
CodeProject 正在变化。 阅读更多。
Home

轻松从 SQL 数据库显示图像

starIconstarIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIcon

2.67/5 (4投票s)

2008 年 7 月 5 日

Ms-PL

1分钟阅读

viewsIcon

43986

downloadIcon

663

这个项目包含一个Web自定义控件,用于直接从数据库渲染图像。它可以与图像字段、文本、日期或数值字段(它生成包含文本的图像)以及URL字段(如常规图像控件中)一起使用。

引言

这是VsCustomRenderer控件的3.0版本。你可以在这里找到之前的版本:2.01.0

背景

这个项目受到CodeProject上dev2dev撰写的一篇文章的启发:在ASP.NET中创建动态图像。部分代码来自该项目。

Using the Code

要测试此控件

  • 打开或创建一个网站。
  • 将VSCustomRendererLibrary引用添加到网站。
  • web.config<httpHandlers>部分中添加以下行
<add verb="*" path="*.jpg" 
  type="VSCustomRendererLibrary.VsImageHandler, VSCustomRendererLibrary"/>

如果你的web.config文件中找不到此部分,只需在<system.web>下创建它

<system.web>
    ......
     <httpHandlers>
          <add verb="*" path="*.jpg" 
            type="VSCustomRendererLibrary.VsImageHandler, VSCustomRendererLibrary"/>
     </httpHandlers>
</system.web>
  • 打开/创建一个新的ASPX页面。
  • 添加一个SqlDataSource,连接到SQL表或视图(这个项目使用SQL Server 2005 EE进行测试)。
  • 添加一个GridView并将其连接到SqlDataSource
  • GridView中,添加图像列并将其转换为模板字段。
  • GridView工具栏菜单中选择编辑模板。
  • 将一个VSCustomRenderer添加到ItemTemplate中。将控件绑定到DataSource字段。

关注点

这个Web控件现在与AJAX一起工作。此控件不再将图像保存到磁盘以显示它们。图像直接从内存通过一个IHttpHandler显示。这个HTTP处理程序不会打开新的数据库连接,它只是从内存中显示图像,因此页面渲染没有延迟,也没有额外的参数需要设置。

历史

此控件的所有版本也发布在CodePlex上。

© . All rights reserved.