0

ajaxcontroltoolkit:ajaxfileupload にはバグが多すぎて衰退していると思います。私は自分のプロジェクトでこのコンポーネントを頻繁に使用しているため、このコントロールの多くの深刻なバグや機能を克服しています。ここで、保存する前にajaxfileuploadを使用してアップロードされた画像の幅と高さを取得し、取得した情報に基づいて幅または高さが正しいことを確認し、画像の幅と高さに互換性がない場合にユーザーに通知し、プロセスを防止する必要がありますさらに進んで画像を保存します。何かアイデアをください?!

HTML 側:

<asp:AjaxFileUpload ID="AjaxFileUpload1" runat="server"
        onuploadcomplete="AjaxFileUpload1_UploadComplete" ThrobberID="myThrobber" MaximumNumberOfFiles="1" AllowedFileTypes="jpg,jpeg"/>

コードの背後にある:

protected void AjaxFileUpload1_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
{
    string filePath = "~/upload/" + e.FileName;
    AjaxFileUpload1.SaveAs(filePath);

}
4

1 に答える 1

6

AjaxFileUpload はアップロードを処理するだけで、ファイル自体に関する情報は提供しません。次のようなものを使用する必要があります

System.Drawing.Image objImage = System.Drawing.Image.FromFile(Server.MapPath(filePath));
width = objImage.Width;
height = objImage.Height; 

ファイルをメモリにロードしたくない場合は、イメージをロードせずに .NET でイメージの寸法を確実に取得するにはどうすればよいですか?を確認してください。またはファイル全体を読み取らずに画像の寸法を取得する

Pluploadなどのツールを使用して、クライアント側で画像の幅と高さを確認することもできます。

于 2012-12-03T08:53:34.233 に答える