0

我正在尝试创建一个画廊,用户在其中使用 fileupload 控件上传图像,然后调整大小然后保存到服务器上的文件系统。他们可以上传 jpg、png 和 gif 文件。

我知道您可以上传然后检查大小的过程,但这似乎效率低下。我听说过 memorystream,但不确定如何使用它。

谢谢...

4

3 回答 3

2

在完整文件位于服务器端之前,您无法调整图片大小。

是的,它效率低下,但这是网络的现实。唯一的选择是使用客户端代码(activex、silverlight、flash),但这可能不是一个好习惯。

于 2012-08-23T12:52:45.540 回答
1

您可以尝试使用此代码 - 指定的大小以千字节为单位。默认值为 4096 KB (4 MB)。

if (FileUpload1.HasFile)
{
if (FileUpload1.PostedFile.ContentLength < yourSize) //Adjust your size 
{
   .........
}
else
{
Label1.Text = "File size exceeds maximum limit 20 MB.";
}
}
于 2012-08-23T12:56:07.233 回答
0

默认情况下,最大上传为 4mb(使用 .Net) - 可以使用重置

<httpRuntime executionTimeout="sss" maxRequestLength="xxxx" />

然而,这确实是一种讨厌的方式,因为友好的错误消息很少被接收(即没有好的消息)。如果 HTTPRunTime 也超过了,即使在 Upload 上使用 ContentLength 也会被炸毁。Microsoft 建议使用更大的 httRuntime 值,然后通过 ContentLength 进行限制(打破两者都会导致讨厌的错误 - 通常)。

另一种选择是使用这样的东西 ==> Ajax Uploader

于 2012-08-23T15:22:37.690 回答