отображать изображение при загрузке в asp.net

1

Я делаю приложение в asp.net на странице регистрации, я хочу загрузить изображение на эту страницу и сохранить в базе данных одновременно, но работа с базой данных сделала невозможным сохранение моего загружаемого изображения, но не может отображаться на этой странице.

Мой код проектирования:

 <form id='form 1'  run at="server">
    <div>
    <table>
    <tr>
    <td>
         <asp:FileUpload ID="FileUpload1" run at="server" />
    </td>
    <td>
        <asp:Button ID="Button1" runat="server" Text="submit" onclick="Button1_Click" /></td>
        <td>
            <asp:Label ID="Label1" runat="server" Text="" Font-Names = "Arial"></asp:Label>
            <asp:Image ID="Image1" runat="server" Height="52px" Width="79px" />
        </td></tr></table>

    </div>
    </form>

мой код позади:

    protected void Button 1_Click(object sender, EventArgs e)
    {
        // Read the file and convert it to Byte Array
        string filePath = FileUpload1.PostedFile.FileName;
        string filename = Path.GetFileName(filePath);
        string ext = Path.GetExtension(filename);
        string contenttype = String.Empty;
        Image1.ImageUrl = filename;
        //Set the contenttype based on File Extension
        switch (ext)
        {
            case ".doc":
                contenttype = "application/vnd.ms-word";
                break;
            case ".docx":
                contenttype = "application/vnd.ms-word";
                break;
            case ".xls":
                contenttype = "application/vnd.ms-excel";
                break;
            case ".xlsx":
                contenttype = "application/vnd.ms-excel";
                break;
            case ".jpg":
                contenttype = "image/jpg";
                break;
            case ".png":
                contenttype = "image/png";
                break;
            case ".gif":
                contenttype = "image/gif";
                break;
            case ".pdf":
                contenttype = "application/pdf";
                break;
        }
        if (contenttype != String.Empty)
        {

            Stream fs = FileUpload1.PostedFile.InputStream;
            BinaryReader br = new BinaryReader(fs);
            Byte[] bytes = br.ReadBytes((Int32)fs.Length);

            //insert the file into database
            string strQuery = "insert into empimage(Name, ContentType, Data)" +
               " values (@Name, @ContentType, @Data)";
            SqlCommand cmd = new SqlCommand(strQuery);
            cmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = filename;
            cmd.Parameters.Add("@ContentType", SqlDbType.VarChar).Value
              = contenttype;
            cmd.Parameters.Add("@Data", SqlDbType.Binary).Value = bytes;
            InsertUpdateData(cmd);
            Label1.ForeColor = System.Drawing.Color.Green;
            Label1.Text = "File Uploaded Successfully";
        }
        else
        {
            Label1.ForeColor = System.Drawing.Color.Red;
            Label1.Text = "File format not recognised." +
              " Upload Image/Word/PDF/Excel formats";
        }

}
    private Boolean InsertUpdateData(SqlCommand cmd)
    {
        pd = ConfigurationManager.ConnectionStrings["su"].ConnectionString;
        con = new SqlConnection(pd);
        //String strConnString = System.Configuration.ConfigurationManager
        //.ConnectionStrings["conString"].ConnectionString;
        //SqlConnection con = new SqlConnection(strConnString);
        cmd.CommandType = CommandType.Text;
        cmd.Connection = con;
        try
        {
            con.Open();
            cmd.ExecuteNonQuery();
            return true;
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
            return false;
        }
        finally
        {
            con.Close();
            con.Dispose();
        }
    }

но он не отображает изображение во время выполнения

пожалуйста, предложите мне

Теги:
file-upload

1 ответ

0

вы должны попробовать

Image1.ImageUrl = FileUpload1.FileName;
  • 1
    Не могли бы вы вкратце объяснить, как работает ваше решение. Это сделает ваш ответ более полезным (+1) для ОП и других читателей.
  • 0
    я пытаюсь этот код, но он не работает, он показывает только значок изображения, но не изображение, но я нахожу ответ на мой вопрос, код защищен void Button1_Click (отправитель объекта, EventArgs e) {if (FileUpload1.PostedFile! = null && FileUpload1.PostedFile .FileName! = "") {FileUpload1.SaveAs (Server.MapPath ("image /" + FileUpload1.FileName)); Image1.ImageUrl = "~ / image /" + FileUpload1.FileName; } cmd = new SqlCommand ("вставить в значения empimage (Name) ('" + "~ / Image /" + FileUpload1.FileName + "')", con); con.Open (); cmd.ExecuteNonQuery (); con.Close (); }
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню