0

我需要使用 C# 在 ASP 页面中使用 ODBC 连接将存储在 mysql db 中的图像显示为 blob 字段。请帮我

<%@ WebHandler Language="C#" Class="stdImg" %>

使用系统;使用 System.Web;

公共类 stdImg : IHttpHandler {

public void ProcessRequest(HttpContext context)
{


    System.Data.Odbc.OdbcConnection con = new System.Data.Odbc.OdbcConnection();
    con.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["sis"].ConnectionString;


    con.Open();
    System.Data.Odbc.OdbcCommand cmd = con.CreateCommand();
    cmd.CommandText = "SELECT PHOTOGRAPH FROM student_mast WHERE ADMISSION_NO='1000000001'";


    byte[] buf = (byte[])cmd.ExecuteScalar();


    context.Response.Clear();
    context.Response.OutputStream.Write(buf, 0, buf.Length);
    context.Response.ContentType = "image/jpeg";
    context.Response.BinaryWrite(buf);
}

public bool IsReusable
{
    get
    {
        return false;
    }
}

}

4

1 回答 1

1

像这样使用连接字符串

<add name="MYSQLConnectionString" connectionString="Driver={MySQL ODBC 3.51 Driver};database=DB;option=0;pwd=pwd;port=3306;server=yourserver;uid=user;sslverify=0"
   providerName="System.Data.Odbc" />

首先安装 MYSQl 的 ODBC 驱动程序

这是下载链接

http://dev.mysql.com/downloads/connector/odbc/3.51.html

更新 使用数据网格并连接到数据库并在数据网格中使用此代码

 <asp:TemplateColumn  HeaderText="Image">
         <ItemTemplate >
            <img runat="server" 
                 src='<%# "getImage.aspx?ID=" + DataBinder.Eval(Container.DataItem, 
                 "ImageIdentity")  %>' ID="Img1"/>
         </ItemTemplate>
     </asp:TemplateColumn>

验证您的图像字段名称

于 2012-04-14T07:40:13.950 回答