0

C# を使用した ASP ページで ODBC 接続を使用して、mysql db に保存されている画像を blob フィールドとして表示する必要があります。私を助けてください

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

システムを使用する; System.Web の使用;

public class 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

データグリッドを使用して更新 し、DBに接続し、データグリッドでこのコードを使用します

 <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 に答える