0

私の.aspxでは、

<div id="pictureBox">
                            <img width="150" height="150" runat="server" id="imageField" />
                        </div>
                        <br />
                        <input id="Upload" style="width: 200px; font-family: Myanmar3;" type="file" name="Upload"
                            runat="server" accept="image/*" >
                        <br />
                        <asp:Button ID="ImageButton1" runat="server" OnClick="upload_Click" CssClass="styleButton"
                            Text="Upload" />

私の.csでは、

  protected void upload_Click(object sender, EventArgs e)
    {  
        if (Upload.Value !="")
        {
            System.IO.Stream fs = Upload.PostedFile.InputStream;
            img_uploadStream = Upload.PostedFile.InputStream;
            System.IO.BinaryReader br = new System.IO.BinaryReader(fs);
            Byte[] bytes = CreateThumbnail(br.ReadBytes((Int32)fs.Length),150);
            string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
            imageField.Src = String.Format("data:{0};base64,{1}", "image/jpeg", base64String);

        }
    }

画像はアップロードされ、「imageField」に正常に表示されますが、「upload_Click」イベントの後、「Upload」入力の値フィールドは空になります。この値を取り戻して、別のプロセスを作成したいと思います。

4

1 に答える 1

0

できません。ユーザーがファイルを選択してボタンをクリックすると、ファイルがクライアントからサーバーに送信されます。後で、ユーザーが再度選択しない限り、常に空になります。さらに処理するために再度必要な場合は、ファイルをサーバーにローカルに保存できます。

于 2013-03-19T12:00:26.470 に答える