برای پیادهسازی قابلیت آپلود چندگانه فایلها با استفاده از ASP.NET Web Forms، میتوانید مراحل زیر را دنبال کنید. این راهنما شامل طراحی فرم برای آپلود فایلها، کد سرور برای پردازش آپلودها و ذخیره فایلها در دایرکتوری مشخص است.
### ۱. طراحی صفحه آپلود
ابتدا یک صفحه جدید به نام **FileUpload.aspx** ایجاد کنید. در این صفحه، یک فرم برای آپلود فایلها ایجاد میکنیم:
```asp
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FileUpload.aspx.cs" Inherits="YourNamespace.FileUpload" %>
File Upload
```
### ۲. کد سرور برای پردازش آپلود
در کد مربوط به **FileUpload.aspx.cs**، منطق پردازش فایلهای آپلود شده را اضافه کنید:
```csharp
using System;
using System.IO;
namespace YourNamespace
{
public partial class FileUpload : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnUpload_Click(object sender, EventArgs e)
{
if (fileUpload.HasFiles) // بررسی اینکه آیا فایلی انتخاب شده است
{
foreach (var postedFile in fileUpload.PostedFiles)
{
try
{
string fileName = Path.GetFileName(postedFile.FileName);
string savePath = Server.MapPath("~/Uploads/") + fileName;
// ذخیره فایل در دایرکتوری مشخص
postedFile.SaveAs(savePath);
}
catch (Exception ex)
{
lblMessage.Text += "Error uploading " + postedFile.FileName + ": " + ex.Message + "
";
}
}
lblMessage.Text = "Files uploaded successfully!";
}
else
{
lblMessage.Text = "Please select files to upload.";
}
}
}
}
```
### ۳. ایجاد دایرکتوری برای ذخیره فایلها
اطمینان حاصل کنید که دایرکتوری `Uploads` در ریشه پروژه شما ایجاد شده باشد. این دایرکتوری محلی است که فایلهای آپلود شده در آن ذخیره خواهند شد.
### ۴. نکات امنیتی
- **بررسی نوع فایل**: قبل از ذخیره فایلها، میتوانید نوع فایلها را بررسی کنید تا مطمئن شوید فقط فایلهای مجاز آپلود میشوند.
```csharp
string fileExtension = Path.GetExtension(postedFile.FileName);
string[] allowedExtensions = { ".jpg", ".png", ".pdf", ".docx" };
if (!allowedExtensions.Contains(fileExtension))
{
throw new Exception("File type is not allowed.");
}
```
- **مدیریت حجم فایل**: میتوانید حداکثر حجم فایل را بررسی کنید تا از آپلود فایلهای بزرگ جلوگیری کنید.
- **دسترسی به دایرکتوری**: اطمینان حاصل کنید که دایرکتوری آپلود، دسترسی نوشتن دارد و از طریق وب قابل دسترسی نیست.
### ۵. نتیجهگیری
با دنبال کردن مراحل فوق، شما یک سیستم ساده برای آپلود چندگانه فایلها با ASP.NET Web Forms ایجاد کردهاید. این سیستم قابلیت آپلود چندین فایل را فراهم میکند و میتواند به راحتی گسترش یابد تا ویژگیهای بیشتری اضافه شود.
| صفحه قابل مشاهده:
دانلود کد آپلود چندگانه فایلها با ASP.NET Web Form میباشد