1>Seorang teman mengajukan pertanyaan hari ini:
Mengapa tidak ada kesalahan saat menggunakan kontrol File untuk membaca jalur gambar, dokumen, dan file lainnya, tetapi saat membaca file video (seperti rmvb, dll), ada kesalahan yaitu halaman tidak dapat ditampilkan.
Cuplikan kodenya seperti berikut:
private void btnUpFiles_Click(pengirim objek, System.EventArgs e)
{
string pathName=ini.File1.PostedFile.FileName.ToString();
Respon.Write(pathName);
}
2>Mulai selesaikan masalah:
Saya pikir itu masalah dalam mendapatkan string jalur, jadi saya mencegat jalur dan nama file terlebih dahulu, kemudian mencegat ekstensi file, dan menyimpannya sebagai string, tetapi selalu ada kesalahan. Cuplikan kodenya seperti berikut:
string fullname=this.File1.PostedFile.FileName.ToString();//Dapatkan path lengkap
string firstname=fullname.Substring(0,fullname.LastIndexOf(".")+1);//Dapatkan jalur dan nama file, dan hapus akhiran file
Session["firstname"]=firstname;//Simpan dalam satu sesi
char [] spliter={'.'};//Pembatas yang digunakan untuk memisahkan string
string [] fileName=this.File1.PostedFile.FileName.Split(spliter);//Simpan setiap bagian dari path lengkap yang dipecah dalam array
Session["lastname"]=fileName[fileName.Length-1];// Simpan elemen terakhir (akhiran nama) dalam array sebagai sesi
Response.Redirect("test.aspx");//Saya ingin meneruskannya ke halaman ini untuk pengujian.
Cara di atas masih gagal, dan penyebab errornya sepertinya tidak ada hubungannya dengan string sama sekali.
3>Netizen "@@" menyatakan bahwa ini adalah masalah httpRuntime (terima kasih):
Solusi untuk masalah ini: Tambahkan kode berikut ke <system.web></system.web> di web.config:
<httpRuntimeexecutionTimeout="600" maxRequestLength="951200"
useFullyQualifiedRedirectUrl="benar" minFreeThreads="8"
minLocalRequestFreeThreads="4" appRequestQueueLimit="100" aktifkanVersionHeader="true"/>
4>Penjelasan dari MSDN:
httpRuntime adalah konfigurasi pengaturan runtime http asp.net untuk menentukan cara menangani permintaan ke aplikasi asp.net.
executionTimeout: Menunjukkan batas waktu maksimum yang diperbolehkan untuk mengeksekusi permintaan, dalam hitungan detik
maxRequestLength: Menunjukkan ukuran unggahan file maksimum yang didukung oleh ASP.NET. Batasan ini dapat digunakan untuk mencegah serangan penolakan layanan yang disebabkan oleh pengguna yang meneruskan file dalam jumlah besar ke server. Ukuran yang ditentukan dalam KB. Nilai defaultnya adalah 4096 KB (4 MB).
useFullyQualifiedRedirectUrl: Menunjukkan apakah pengalihan klien sepenuhnya memenuhi syarat (dalam format " http://server/path ", yang diperlukan untuk beberapa kontrol seluler), atau apakah pengalihan relatif dikirim ke klien sebagai gantinya. Jika Benar, semua pengalihan yang tidak sepenuhnya memenuhi syarat akan otomatis dikonversi ke format yang sepenuhnya memenuhi syarat. false adalah opsi default.
minFreeThreads: Menentukan jumlah minimum thread gratis yang diizinkan untuk menjalankan permintaan baru. ASP.NET menjaga sejumlah thread tertentu tetap bebas untuk permintaan yang memerlukan thread tambahan untuk menyelesaikan pemrosesannya. Nilai defaultnya adalah 8.
minLocalRequestFreeThreads: Menunjukkan jumlah minimum thread gratis yang dikelola oleh ASP.NET yang diizinkan untuk menjalankan permintaan lokal baru. Jumlah thread ini dicadangkan untuk permintaan masuk dari host lokal jika beberapa permintaan membuat subpermintaan ke host lokal selama pemrosesan. Hal ini menghindari kemungkinan kebuntuan yang disebabkan oleh masuk kembali ke server Web secara rekursif.
appRequestQueueLimit: Menunjukkan jumlah maksimum permintaan yang akan diantri ASP.NET untuk aplikasi. Permintaan dimasukkan ke dalam antrean ketika thread kosong tidak cukup untuk menangani permintaan tersebut. Ketika antrian melebihi batas yang ditentukan dalam pengaturan ini, permintaan masuk akan ditolak dengan pesan kesalahan "503 - Server Terlalu Sibuk".
aktifkanVersionHeader: Menunjukkan apakah ASP.NET harus mengeluarkan header versi. Microsoft Visual Studio 2005 menggunakan properti ini untuk menentukan versi ASP.NET yang sedang digunakan. Untuk lingkungan produksi, properti ini tidak diperlukan dan dapat dinonaktifkan.