我試圖將圖像文件以二進制格式保存到數據庫中。並檢索這些二進制文件,並在我的網頁上顯示圖像。在使用下面的代碼時,會產生一個錯誤。請幫幫我。已經有一個與此命令相關的開放式數據讀取器,必須先關閉它。?8
public partial class Default3 : System.Web.UI.Page
{
static SqlConnection con = new SqlConnection(@"connectionString");
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
filldropdown();
}
}
private void filldropdown()
{
SqlCommand cmd = new SqlCommand("Select EmpID from Tbl_Emp", con);
if (con.State == ConnectionState.Closed)
{
con.Open();
}
SqlDataReader dr = cmd.ExecuteReader();
TextBox3.Items.Clear();
if (dr.HasRows)
{
while (dr.Read())
{
TextBox3.Items.Add(dr["EmpID"].ToString());
}
}
con.Close();
}
protected void Button1_Click(object sender, EventArgs e)
{
SqlCommand cmd = new SqlCommand("insert into Tbl_Emp values(@id,@name,@image)", con);
cmd.Parameters.AddWithValue("@id", TextBox1.Text);
cmd.Parameters.AddWithValue("@name", TextBox2.Text);
int img = FileUpload1.PostedFile.ContentLength;
byte[] msdata = new byte[img];
FileUpload1.PostedFile.InputStream.Read(msdata, 0, img);
cmd.Parameters.AddWithValue("@image", msdata);
if (con.State == ConnectionState.Closed)
{
con.Open();
}
cmd.ExecuteNonQuery();
con.Close();
filldropdown();
Response.Write("Data Saved ....");
}
protected void Button2_Click(object sender, EventArgs e)
{
SqlCommand cmd = new SqlCommand("select * from Tbl_Emp where [email protected]", con);
cmd.Parameters.AddWithValue("@id", TextBox3.Text);
if (con.State == ConnectionState.Closed)
{
con.Open();
}
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows && dr.Read())
{
TextBox1.Text = dr["EmpID"].ToString();
TextBox2.Text = dr["EmpName"].ToString();
Image1.ImageUrl = "Handler.ashx?EmpID=" + TextBox3.Text;
}
else
{
Response.Write("Record With This ID Note Found");
}
}
}
來源:
<div>
Enter ID <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
Enter Name <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
Enter Pic <asp:FileUpload ID="FileUpload1" runat="server" /><br />
<asp:Button ID="Button1" runat="server" Text="Save" onclick="Button1_Click" /><br >
<asp:Image ID="Image1" runat="server" Height="137px" Width="130px" /><br />
<asp:DropDownList ID="TextBox3" runat="server">
</asp:DropDownList>
<asp:Button ID="Button2" runat="server" Text="Search" onclick="Button2_Click" />
數據表:
謝謝。現在它正在工作。 – Vipin 2014-10-08 11:23:55