Ich bin ein frischer C#, ich bin in der Lage, eine Datei auf den Server mit weniger Größe hochladen, aber wenn ich versuche, eine Größe von mehr als 5000k hochladen gibt es eine Ausnahme.Kann keine Zip-Datei von mehr als 5000 k Größe hochladen
Hier ist mein C# -Code
private void UploadFile(string filename)
{
try
{
PeopleMatrixService peopleMetrixService = new PeopleMatrixService();
String strFile = System.IO.Path.GetFileName(filename);
// TestUploader.Uploader.FileUploader srv = new TestUploader.Uploader.FileUploader();
FileInfo fInfo = new FileInfo(filename);
long numBytes = fInfo.Length;
double dLen = Convert.ToDouble(fInfo.Length/10000000);
if (dLen < 8)
{
FileStream fStream = new FileStream(filename, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fStream);
byte[] data = br.ReadBytes((int)numBytes);
br.Close();
string sTmp = peopleMetrixService.UploadFile(data, strFile);
fStream.Close();
fStream.Dispose();
MessageBox.Show("File Upload Status: " + sTmp, "File Upload");
}
else
{
MessageBox.Show("The file selected exceeds the size limit for uploads.", "File Size");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString(), "Upload Error");
}
}
und meinen Code in webservice
[WebMethod]
public string UploadFile(byte[] f, string fileName)
{
try
{
MemoryStream ms = new MemoryStream(f);
FileStream fs = new FileStream(System.Web.Hosting.HostingEnvironment.MapPath("~/Response Attachments/") + fileName, FileMode.Create);
//FileStream fs = new FileStream(Server.MapPath("~/Response Attachments/") + fileName, FileMode.Create);
ms.WriteTo(fs);
ms.Close();
fs.Close();
fs.Dispose();
return "OK";
}
catch (Exception ex)
{
return ex.Message.ToString();
}
}
Abgesehen von den Größenbeschränkungen sollten Sie "using" -Anweisungen für alle diese Streams verwenden - andernfalls werden sie bei einem Fehler nicht geschlossen. –
Schreiben Sie niemals etwas, das Ihnen eine Ausnahme gibt, ohne zu sagen, was die Ausnahme ist. –