我想将图像文件上传到FTP服务器,所以我在asp.net页面上有一个AsyncFileUpload
控件。我使用以下代码来获取AsyncFileUpload1.PostedFile
的类型,然后尝试获取它的尺寸但到目前为止没有运气。
string cType =asyncFU.PostedFile.ContentType;
if (cType.Contains("image"))
{
Stream ipStream = asyncFU.PostedFile.InputStream;
Image img = System.Drawing.Image.FromStream(ipStream); //ERROR comes here, I can't think the work around this.
int w = img.PhysicalDimension.Width;
int h = img.PhysicalDimension.Height;
}
正如您所看到的,错误消息表明它无法从System.Drawing.Image
转换为System.Web.UI.WebControls.Image
。我理解错误,但我不能想到这个工作。
我有一个AsyncFileUpload
控件,其中将上传未知文件,但如果它是图像文件,则仅保存到FTP服务器。
有什么建议吗?
答案 0 :(得分:1)
试试这个:
Stream ipStream = fuAttachment.PostedFile.InputStream;
using (var image = System.Drawing.Image.FromStream(ipStream))
{
float w = image.PhysicalDimension.Width;
float h = image.PhysicalDimension.Height;
}
答案 1 :(得分:0)
您的img
变量应该是System.Drawing.Image
类型,而不是System.Web.UI.WebControls.Image
。