기본적으로 관리자가 갤러리라는 웹 사이트를 가지고있어 이미지에 대한 정보가있는 이미지를 업로드 할 수 있으며 갤러리에 표시됩니다. 문제는 ~ 40 KB의 크기, 잘 작동하지만 ~ 230 KB의 크기로 다른 이미지를 업로드 할 때 크롬 하단 상태 표시 줄에 최대 업로드 파일의 %가 표시되지만 문제를 처리하는 데 소요되는 것처럼 보입니다. 100 % 퍼센트 만이 내 서버를 기다리는 유지하고 ... 끝나지 않아 및 업로드 된 이미지가 http://www.atrin-gallery.ir/Images/Upload/dalangV.jpg업로드 된 이미지가 엉망입니다.
파일 업로드를 처리하려면 코드처럼 그 후 다음과 같습니다 :
if (Request != null)
{
try
{
HttpPostedFileBase file = Request.Files["image"];
if ((file != null) && (file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName))
{
string subPath = "~/Images/Upload"; // your code goes here
bool isExists = System.IO.Directory.Exists(Server.MapPath(subPath));
if (!isExists)
{
System.IO.Directory.CreateDirectory(Server.MapPath(subPath));
}
string fileName = Path.GetFileName(file.FileName);
fileName = fileName.Replace(" ", "");
var path = Path.Combine(Server.MapPath(subPath), fileName);
string fileContentType = file.ContentType;
byte[] fileBytes = new byte[file.ContentLength];
file.InputStream.Read(fileBytes, 0, file.ContentLength);
file.SaveAs(path);
}
}
catch (Exception e)
{
}
}
P.S : 다른 많은 웹 사이트에서 동일한 기능을 사용하고 있으며 더 큰 파일이나 이미지, 아이디어가 있으면 제대로 작동합니다.
왜 ContentLength가 이미 int 일 때 int로 변환합니까? –
그래도 좋은 지적이지만 여전히 주요 문제에 도움이되지 않는다 ... 어쨌든 Convert.ToInt32를 제거하십시오. –
emacs와 같은 원시 데이터 뷰어에서 이미지를 엽니 다. 나쁜 이미지를 좋은 이미지와 비교하십시오. 끝에 정크 문자가 잔뜩 있습니까? 중간에? 다시 업로드하는 경우 항상 같은 위치에 문제가 있습니까? –