برای ارسال اطلاعات فرم به دیتابیس با استفاده از **ADO.NET** در **ASP.NET Web Forms**، شما نیاز به ایجاد یک فرم برای جمعآوری دادهها، ایجاد یک اتصال به دیتابیس و نوشتن کدی برای ذخیرهسازی اطلاعات دارید. در اینجا مراحل انجام این کار را به تفصیل توضیح میدهم.
### مراحل ارسال اطلاعات فرم به دیتابیس با استفاده از ADO.NET در ASP.NET Web Forms
#### 1. **ایجاد دیتابیس و جدول**
قبل از هر چیز، باید یک دیتابیس و جدولی برای ذخیرهسازی اطلاعات ایجاد کنید. فرض کنید که یک دیتابیس به نام `ContactDB` دارید و جدولی به نام `Contacts` با ساختار زیر:
```sql
CREATE TABLE Contacts (
Id INT PRIMARY KEY IDENTITY(1,1),
Name NVARCHAR(100),
Email NVARCHAR(100),
Message NVARCHAR(MAX)
);
```
#### 2. **ایجاد فرم جمعآوری اطلاعات**
یک صفحه ASPX برای فرم تماس با ما ایجاد کنید که شامل کنترلهای لازم برای ورودی نام، ایمیل و پیام باشد.
##### **نمونه کد ASPX برای فرم جمعآوری اطلاعات:**
```asp
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Contact.aspx.cs" Inherits="YourNamespace.Contact" %>
Contact Us
```
#### 3. **نوشتن کد برای ذخیرهسازی اطلاعات در دیتابیس**
در فایل CodeBehind، باید کدی برای پردازش فرم و ذخیره اطلاعات در دیتابیس با استفاده از ADO.NET بنویسید.
##### **کد C# در فایل CodeBehind:**
```csharp
using System;
using System.Data.SqlClient;
using System.Configuration;
namespace YourNamespace
{
public partial class Contact : System.Web.UI.Page
{
protected void btnSend_Click(object sender, EventArgs e)
{
string name = txtName.Text;
string email = txtEmail.Text;
string message = txtMessage.Text;
// ذخیره اطلاعات در دیتابیس
string connectionString = ConfigurationManager.ConnectionStrings["ContactDB"].ConnectionString;
using (SqlConnection connection = new SqlConnection(connectionString))
{
string query = "INSERT INTO Contacts (Name, Email, Message) VALUES (@Name, @Email, @Message)";
using (SqlCommand command = new SqlCommand(query, connection))
{
// پارامترها
command.Parameters.AddWithValue("@Name", name);
command.Parameters.AddWithValue("@Email", email);
command.Parameters.AddWithValue("@Message", message);
try
{
connection.Open();
command.ExecuteNonQuery();
lblMessage.Text = "Your message has been sent successfully!";
}
catch (Exception ex)
{
lblMessage.Text = "Error: " + ex.Message;
lblMessage.ForeColor = System.Drawing.Color.Red;
}
}
}
}
}
}
```
#### 4. **تنظیمات Web.config**
برای اتصال به دیتابیس، شما باید یک رشته اتصال (Connection String) در فایل `Web.config` پروژه خود اضافه کنید:
```xml
```
### نکات مهم:
- **اعتبارسنجی ورودی**: حتماً ورودیهای کاربر را اعتبارسنجی کنید تا از ورود اطلاعات نادرست جلوگیری کنید. میتوانید از کنترلهای ASP.NET مانند `RequiredFieldValidator` استفاده کنید.
- **مدیریت خطا**: خطاهای احتمالی را بهدرستی مدیریت کنید و پیامهای مناسبی به کاربر نمایش دهید.
- **استفاده از Stored Procedures**: برای امنیت بیشتر و جلوگیری از حملات SQL Injection، میتوانید از **Stored Procedures** استفاده کنید.
- **تأیید صحت ایمیل**: اگر در فرم ایمیل جمعآوری میکنید، مطمئن شوید که فرمت ایمیل صحیح است.
### جمعبندی
با پیروی از این مراحل، میتوانید اطلاعات فرم را با استفاده از **ADO.NET** در **ASP.NET Web Forms** به دیتابیس ارسال کنید. این روش به شما امکان میدهد تا اطلاعات کاربران را به راحتی ذخیره کنید و از آنها در آینده استفاده کنید. همچنین میتوانید با گسترش این کد، قابلیتهای بیشتری مانند ارسال ایمیل تأیید یا نمایش اطلاعات ثبت شده به کاربران اضافه کنید.
| صفحه قابل مشاهده:
دانلود کد ارسال اطلاعات فرم به دیتابیس با استفاده از ADO.NET با ASP.NET Web Form میباشد