Thứ Tư, 9 tháng 4, 2014

I. Giới thiệu về ASP MVC

       Công nghệ MVC là một công nghệ mới ra cách đây 1 vài năm gì đấy… Nó không chỉ có trong ASP mà còn ở các ngôn ngữ lập trình khác: PHP, JSP… Công nghệ MVC mang lại cho coder một cách tổ chức code khoa học hơn, giúp soạn thảo mã nguồn nhanh hơn, dễ chỉnh sửa, chương trình chạy nhanh, hiệu quả hơn.


      MVC tức là Model, View, Control là 3 thành phần cơ bản của công nghệ. Cách thức tổ chức code được chia thành 3 bộ phận rõ rệt, mỗi bộ phận có 1 chức năng riêng. Cụ thể là:
  1.  Model chứa các file mã nguồn liên quan đến nhập, xuất dữ liệu, giao tiếp giữa cơ sở dữ liệu và chương trình. Các file trong Model có thể là các class mặc định của Visual tạo ra: ADO.NET Entity Database hoặc LINQ to SQL. Ngoài ra, lập trình viên cũng có thể thêm vào những class chứa thông tin phục vụ cho chức năng của chương trình
  2.      View chứa các file hiển thị chương trình, nó tiếp nhận thông tin từ Controller rồi trả về Browser mã HTML, JavaScript… Các file trong View có thể dựa trên cơ sở ASP (file *.aspx) hoặc dựa trên CSharp HTML (file *.cshtml). Về cơ bản 2 loại file này giống nhau về cách thức làm việc chúng chỉ khác nhau đôi chút về phần code. Với file ASPX thì cấu trúc hoàn toàn tương tự như trong Web Form cũng được xây dựng từ các file *.aspx và *.Master; có điều trong trường hợp này file *.aspx không lấy dữ liệu từ file *.aspx.cs tương ứng mà nó nhận giá trị trả về từ Controller. Còn loại cshtml thì cũng tương tự, được xây dựng từ các file *.cshtml và *.layout, cũng có chức năng như ASPX.
  3.       Control là thư mục chứa các file điều khiển Controller, nó nhận thông tin từ Form HTML, Model, Session, Cookie…, xử lý theo yêu cầu và trả về cho View để View hiển thị ra trình duyệt
ASP MVC còn tích hợp sẵn cách Rewrite URL (Router Manager) nhằm tạo ra các URL thân thiện.

II. Tạo website ASP MVC đầu tiên

        Giới thiệu là thế, bây giờ chúng ta sẽ băt tay vào thực hiện 1 dự án MVC cụ thể để thấy được cách thức hoạt động của các thành phần trong chương trình. Các bạn chỉ cần hiểu được chức năng, cách hoạt động của các thành phần trong chương trình này là có thể vận dụng chúng trong mọi dự án MVC khác.Dự án: Tạo 1 website để quản lý các sản phẩmĐầu vào: Database gồm 2 bảng
+ tbSanPham: chứa thông tin sản phẩm, gồm các trường Id(int identity), TenSanPham, LoaiSanPham (int) (chẳng hạn sản phẩm “Genius” có loại sản phẩm là “Chuột”, một loại sản phẩm có thể có nhiều sản phẩm)

+ tbLoaiSanPham: chứa thông tin loại sản phẩm, gồm các trường LoaiSanPham (int identity), TenLoaiSanPham



Yêu cầu:

-       Có các trang:

 + Hiển thị thông tin các sản phẩm cùng tên loại sản phẩm tương ứng

 + Thêm mới sản phẩm, loại sản phẩm

 + Chỉnh sửa sản phẩm


 + Xóa sản phẩm


Bây giờ chúng ta cùng bắt đầu vào công việc

     Mở Visual Studio, chọn New Project >> ASP.NET MVC 4 (với Visual 2013 là có MVC 5) 




-          Sửa sổ Solution Explore gồm các thư mục mặc định:
   
  Trong thư mục Controllers tạo 1 Controller với tên tùy ý + "Controller" (bắt buộc):

 t
         Trong thư mục Model tạo Model để giao tiếp với CSDL:

Có thể chọn kiểu ADO.NET Entity hoặc LINQ to SQL

Sau đó khai báo Connection String (đến SQL Express hoặc Server Local của Visual…)

Chọn các bảng cần thiết để add vào Model

Khi tạo xong thì trong Model có các file miêu tả các class, các method để làm việc với SQL. Chẳng hạn nó tự động sinh ra một namespace là: <Tên dự án>.Models
Trong đó có các class, các hàm thực thi:
<Database name> <Table> <Field>. Ví dụ: SanPhamDB > tbSanPham > TenSanPham, SanPhamDB db = new SanPhamDB();
<Database name> <Method> hoặc <Database name> <Table> <Method>. Ví dụ: db.tbSanPhams.Add(SP); db.SaveChanges(); Update(SP); db.tbSanPhams.Remove(SP);


Vậy là chúng ta đã tạo được 1 website MVC, trong phần tiếp theo tôi sẽ hướng dẫn các bạn code xử lý các sự kiện, và nhiều hơn nữa trong ASP.NET MVC.



    0 nhận xét:

    Đăng nhận xét

    Categories

    Sample Text

    Được tạo bởi Blogger.

    Must Read

    Biểu mẫu liên hệ

    Tên

    Email *

    Thông báo *

    Popular Posts

    Video

    Popular Posts

    Our Facebook Page