반응형
소개
ASP.NET은 웹 애플리케이션을 개발하기 위한 강력한 프레임워크 중 하나로, C# 언어를 기반으로 하고 있습니다. 이번 블로그에서는 ASP.NET Web Forms를 사용하여 간단한 학생 관리 시스템을 만들어보겠습니다.
1. 프로젝트 시작하기
먼저, Visual Studio를 열고 새로운 ASP.NET Web Forms 프로젝트를 생성합니다. "File" -> "New" -> "Project"를 선택하고, "ASP.NET Web Forms App" 템플릿을 선택하여 프로젝트를 생성합니다.
2. 데이터 모델링
학생 정보를 저장하기 위한 데이터 모델을 만듭니다. Student 클래스를 생성하여 학생의 기본 정보를 담을 수 있습니다.
public class Student
{
public int StudentId { get; set; }
public string Name { get; set; }
public string Grade { get; set; }
}
3. 데이터베이스 연결
데이터베이스는 Entity Framework를 사용하여 연결합니다. DbContext 클래스를 만들고, 학생 정보를 저장할 테이블을 정의합니다.
public class SchoolDbContext : DbContext
{
public DbSet<Student> Students { get; set; }
}
4. 데이터 입력과 출력
4.1 학생 목록 출력
protected void Page_Load(object sender, EventArgs e)
{
using (var context = new SchoolDbContext())
{
var students = context.Students.ToList();
GridView1.DataSource = students;
GridView1.DataBind();
}
}
4.2 학생 추가
protected void btnAdd_Click(object sender, EventArgs e)
{
using (var context = new SchoolDbContext())
{
var newStudent = new Student
{
Name = txtName.Text,
Grade = txtGrade.Text
};
context.Students.Add(newStudent);
context.SaveChanges();
// 추가 후 목록 갱신
Page_Load(sender, e);
}
}
4.3 학생 수정 및 삭제
GridView에서 선택된 행의 데이터를 수정하거나 삭제할 수 있도록 구현합니다.
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
int studentId = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);
TextBox txtName = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txtEditName");
TextBox txtGrade = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txtEditGrade");
using (var context = new SchoolDbContext())
{
var student = context.Students.Find(studentId);
if (student != null)
{
student.Name = txtName.Text;
student.Grade = txtGrade.Text;
context.SaveChanges();
}
}
GridView1.EditIndex = -1;
Page_Load(sender, e);
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
int studentId = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);
using (var context = new SchoolDbContext())
{
var student = context.Students.Find(studentId);
if (student != null)
{
context.Students.Remove(student);
context.SaveChanges();
}
}
Page_Load(sender, e);
}
마무리
이렇게 간단한 학생 관리 시스템을 만들었습니다. ASP.NET을 사용하면 데이터베이스 연동, 데이터 입력 및 출력 등을 쉽게 구현할 수 있습니다. 물론, 실제 프로젝트에서는 보안, 성능 최적화 등 다양한 고려 사항이 있겠지만, 이 예제를 기반으로 다양한 기능을 추가하여 더 복잡하고 유용한 시스템을 만들 수 있습니다.
반응형
'ASP.NET' 카테고리의 다른 글
ASP.NET 언어를 사용하여 CSV 데이터 생성하기 (2) | 2023.11.26 |
---|---|
ASP.NET 중요 메서드 정리 (0) | 2023.11.19 |
ASP.NET 로또 당첨번호 자동 생성하기 (0) | 2023.11.11 |
ASP.NET 코드 최적화 방법 (0) | 2023.11.03 |
ASP.NET 대표적인 에러의 해결 방법 (0) | 2023.10.26 |
댓글