Quên mất chưa giới thiệu, CMS này là một dạng quản trị và cập nhật thông tin đơn giản, có đầy đủ chức năng Thêm, Xóa, Sửa, Lọc và cuối cùng là nó chạy trên môi trường Windows và sử dụng công nghệ .NET. Đặc biệt CMS này sử dụng LINQ đấy, rất thú vị và tiện phát triển sau này.
Chuẩn bị
Để làm được điều này vui lòng chuẩn bị "rau củ quả" như sau:
- Có cài đặt sẵn phiên bản .NET 3.5 hoặc 4.0 trên máy
- Thêm một bộ Visual Studio nhé và phải là phiên bản 2010 (có thể là 2008 nhưng cần cài thêm một số gói dịch vụ khác, bạn nào có nhu cầu thì mình sẽ gửi thông tin)
- Một cơ sở dữ liệu SQL 2005.
30 giây đầu tiên
Ngắm bộ Visual Studio khởi động, tùy máy nhanh hay chậm, nhưng thôi cứ cho là 15 giây khởi động đi.
- Tạo một website
- Chọn loại ngôn ngữ yêu thích VB hoặc C#.
- Chọn loại website là ASP.NET Dynamic Data LINQ to SQL Website
Website đã được tạo với cấu trúc thư mục như sau
30 giây tiếp theo
Chuẩn bị cho kết nối với cơ sở dữ liệu
- Nếu bạn không thấy cửa sở Server Explorer thì có thể vào menu View -> Server Explorer
- Chọn phần Data Connections
- Sau đó nhấn chuột phải để thấy menu xổ và chọn Add Connection...
- Nhập thông tin kết nối vào hộp thoại, ở đây máy mình có tên SQL Server là localhost\sql2005, nếu máy bạn chỉ có cài 1 phiên bản SQL thì có thể điền là (local).
- Chọn database sử dụng để tạo CMS, mình sẽ dùng Northwind, nếu bạn chưa có database mẫu thì có thể tải về một bản để làm thử (tải tại đây, trong đây có 2 database mẫu là Northwind và Pubs)
Sau khi kết nối thì cấu trúc database sẽ hiển thị như sau:
30 giây đầu của phút thứ 2
Tạo mới một tập tin cho website bằng cách
- Chọn menu File -> New file...
- Chọn loại tập tin là LINQ to SQL Classes, bạn có thể đặt tên tập tin là DB
- Một cửa sổ chỉnh sửa hiện ra
- Bạn "nắm đầu" những table của cơ sở dữ liệu từ cửa sổ Server Explorer và kéo thả vào vùng soạn thảo màu trắng, bạn sẽ được một cấu trúc quan hệ của những class do Visual Studio phát sinh dựa trên cơ sở dữ liệu của bạn
Lưu lại và đóng vùng soạn thảo dành cho tập tin DB
Chỉ còn 30 giây thôi
Trong cửa sổ Solution Explorer, tìm đến tập tin gloabl.asax, nhấp đúp vào để soạn thảo nó.
Bạn sẽ thấy một đoạn mã lệnh được mở ra, có rất nhiều dòng viết sẵn và nhiều dòng được đánh dấu chú thích.
- Tìm đến dòng 17, có nội dung như sau
- //model.RegisterContext(typeof(YourDataContextType), new ContextConfiguration() { ScaffoldAllTables = false });
- Bạn sao chép dòng này sang dòng 18 và bỏ chú thích dòng này đi, sau đó sửa tại typeof(YourDataContextType) thành typeof(DBDataContext), nếu lúc nãy bạn đặt tên tập tin LINQ to SQL là DB thì có nghĩa tên class đầy đủ là DBDataContext (Visual Studio tự động thêm hậu tố DataContext vào).
- Sửa tiếp chỗ ScaffoldAllTables = false thành ScaffoldAllTables = true
- Lưu và đóng cửa sổ soạn thảo lại.
- Nhấn nhanh nào F5 để cho kịp 2 phút, bây giờ cầm một cốc cà phê và thưởng thức thành quả 120 giây của mình đê.
Chạy thử
Giao diện trang chủ cũng khá "mướt", trình bày tất cả những bảng của cơ sở dữ liệu
Còn đây là một danh sách dữ liệu của một bảng
Tuyệt chưa nào, trông cũng pro đấy. Có những công cụ đã được phát sinh:
- Lọc theo trường có kiểu dữ liệu true / false
- Lọc theo danh mục sản phẩm
- Lọc theo nhà cung cấp
- Thao tác Sửa
- Thao tác Xóa
- Thao tác Xem
- Dùng checkbox hiển thị trường có kiểu true / false đó nha
- Xem được cả bảng phụ danh sách những chi tiết hóa đơn của từng sản phẩm
- Có thể xem thông tin danh mục sản phẩm của từng sản phẩm
- Và xem được cả thông tin nhà cung cấp
- Chuẩn luôn, có hẳn bộ phân trang, nhảy trang trực tiếp bằng cách nhập số và nhấn enter
- Còn có cả bộ chỉ định số mục hiển thị nữa nè
- Còn đây là nút thêm sản phẩm
Trang sửa dữ liệu
Dùng textbox để nhập liệu cho phần lớn các trường
Những trường có kiểu tru / false thì dùng checkbox
Những trường tham chiếu đến bảng cha thì dùng hộp xổ
Lệnh cập nhật hoặc hủy cập nhật
Trang thông tin chi tiết
Cũng trang bị những liên kết tham chiếu đến bảng cha, bảng con
Và những thao tác trực tiếp: Xóa, Sửa
Ưu điểm
Với những thao tác đơn giản, gọn nhẹ, "mì ăn liền", việc tạo CMS như thế này sẽ giúp cho việc nhập liệu dữ liệu mẫu vào thật đơn giản mà không phải làm nhiều thao tác hoặc tốn sức lập trình. CMS này cũng thích hợp cho những sản phẩm nhỏ, những sản phẩm giới thiệu, dùng thử (demo).
Nhược điểm
Vì nhỏ gọn nên chức năng tạo sẵn khá ít.
Hướng phát triển
Tất nhiên, đồ chùa, đổ tạo sẵn thì không hoàn thiện, nhưng không có nghĩa là không thể phát triển. Với những tính năng cơ bản đó, bạn có thể tùy biến thêm những chức năng nâng cao như:
- Tạo phần quản lý đa ngôn ngữ
- Tạo đăng nhập, quản lý quyền thành viên
- Tạo thêm nhiều loại điều khiển cho từng loại trường dữ liệu theo yêu cầu
- Đặt lại tên những trường tùy biến theo ý nghĩa khác
- Giới hạn những mục được chỉnh sửa / được xem
- ...
Thao khảo
- Thêm phần quản trị và phân quyền http://forums.asp.net/t/1343958.aspx
- Tạo thêm một số điều khiển để nhập liệu http://csharpbits.notaclue.net/2009/06/html-editor-fieldtemplate-for-dynamic.html
- Tạo thêm những trang chỉnh sửa tùy theo bảng dữ liệu http://csharpbits.notaclue.net/2008/07/dynamic-data-and-custom-pages.html
- Tạo những bộ lọc dữ liệu nâng cao http://csharpbits.notaclue.net/2009/01/dynamic-data-filtering-installation.html
- Sắp xếp danh sách dữ liệu http://code.msdn.microsoft.com/ddcolumnsordering
Không có nhận xét nào:
Đăng nhận xét