Hướng Dẫn Thực Hành Winform - phần 7 Thiết kế và xây dựng phần mềm theo mô hình 3 tầng xử lý - Pdf 19

Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng
HƯỚNG DẪN THỰC HÀNH TUẦN 7
(Thiết kế và xây dựng phần mềm theo mô hình 3 tầng xử lý)

1. Mục đích:
Lưu trữ dữ liệu
Xử lý thông tin
Giao diện người dùng

2. Thiết kế CSDL:
a. Sử dụng lại CSDL của tuần thứ 6 (QLHOCSINH.mdb)

HOCSINH
STT Tên trường Kiểu dữ liệu Ghi chú
1 MaHS Text(10) PrimaryKey
2 TenHS Text(255)
3 NgaySinh Date/Time
4 DiaChi Text(255)
5 DTB Number
6 MaLop Text(10) ForeignKey (tham chiếu đến
Lop(MaLop)

LOP
STT Tên trường Kiểu dữ liệu Ghi chú
1 MaLop Text(10) PrimaryKey
2 TenLop Text(255)
3 SiSo Number
Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng
3. Phân tích, thiết kế chức năng của phần mềm theo mô hình 3 tầng xử lý
Dựa vào hướng dẫn thiết kế theo mô hình ba tầng trên lớp lý thuyết, sinh
viên phải phân tích, thiết kế

using System.Data.OleDb;

Với mỗi lần kết nối, ta sử dụng cùng một connectionString chung.
Khai báo một biến static và một property để lưu giữ connection string
xuyên suốt trong chương trình.

protected static string _connectionString;

public static string ConnectionString
{
get
{
return _connectionString;
}
set
{
_connectionString = value;
}
}

Đồng thời ta cần khai báo các biến để thực hiện thao tác trên cơ sở dữ liệu
bao gồm:
protected OleDbConnection connection;
protected OleDbDataAdapter adapter;
protected OleDbCommand command;

Tương tự như bài trước, ta viết hàm kết nối CSDL:
public void connect()
{
connection = new OleDbConnection(_connectionString);

}
d. Tạo lớp HocSinhData (add class HocSinhData.cs) để thực hiện các
thao tác cập nhật cơ sở dữ liệu với dữ liệu học sinh tương ứng
Lớp HocSinhData sẽ chịu trách nhiệm thực hiện cập nhật CSDL
thông qua DataProvider đã có.
Mỗi đối tượng HocSinhData sẽ giữ một Data Provider để thực hiện
truy xuất CSDL
using System.Data;
using System.Data.OleDb;

namespace QLHocSinh
{
class DataProvider
{
protected static string _connectionString;

protected OleDbConnection connection;
protected OleDbDataAdapter adapter;
protected OleDbCommand command;

public static string ConnectionString
{
get
{
return _connectionString;
}
set
{
_connectionString = value;
}

}

}
}

e. Xử lý tính toán:
To lp HocSinhInfo cha các thông tin ca mt hc sinh
vi ràng buc nghip v tương ng

Lớp HocSinhInfo chứa các thông tin lưu trữ của một đối tượng học
sinh. Lớp này chỉ gồm các biến và thuộc tính (hoạt động tương tự như một
struct). Đây chính là lớp truyền tải dữ liệu giữa tầng giao diện và tầng xử lý
tính tóan
using System;
namespace QLHocSinh
{
class HocSinhInfo
{
private string _maHS;
private string _tenHS;
private string _diachi;
private DateTime _ngaysinh;
private float _dtb;
private string _maLop;

public string MaHS
{
get
{
return _maHS;

}
set
{
_diachi = value;
}
}

public DateTime Ngaysinh
{
get
{
return _ngaysinh;
}
set
{
_ngaysinh = value;
}
}

public float DTB
{
get
{
return _dtb;
}
set
{
if (value < 0 || value >10)
throw new Exception("DTB phai >=0 va <=10");
_dtb = value;

public HocSinhInfo HocSinh
{
get
{
return info;
}
set
{
info = value;
}
}

public void insert()
{
data.insert(info.MaHS, info.TenHS, info.Ngaysinh,
info.Diachi, info.DTB, info.MaLop);
}

public void delete()
{
data.delete(info.MaHS);
}

public void update()
{
data.update(info.MaHS, info.TenHS, info.Ngaysinh,
info.Diachi, info.DTB, info.MaLop);
}
}
}


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status