Hướng dẫn ASP.NET MVC cho người mới bắt đầu: Là gì, Archikiến trúc

ASP.NET MVC là gì?

ASP.NET MVC là một khung phát triển web nguồn mở từ Microsoft cung cấp kiến ​​trúc Model View Controller. ASP.net MVC cung cấp một giải pháp thay thế cho ASP.net web forms để xây dựng các ứng dụng web. Đây là một phần của nền tảng .Net để xây dựng, triển khai và chạy các ứng dụng web. Bạn có thể phát triển các ứng dụng web và trang web với sự trợ giúp của HTML, CSS, jQuery, Javascript, Vv

Tìm hiểu MVC với hướng dẫn ASP.NET MVC này bao gồm tất cả các khái niệm cơ bản về MVC cho người mới bắt đầu:

Tại sao ASP.net MVC?

Mặc dù các hình thức web đã rất thành công, Microsoft đã nghĩ đến việc phát triển ASP.net MVC. Vấn đề chính với webForms ASP.net là hiệu suất.

Trong một ứng dụng web, có bốn khía cạnh chính xác định hiệu suất: -

  • Vấn đề về thời gian phản hồi
  • Vấn đề kiểm tra đơn vị
  • Tùy chỉnh HTML
  • Khả năng sử dụng lại của lớp mã phía sau

ASP.net MVC vượt trội về các thông số trên.

Lịch sử phiên bản của MVC

ASP.NET MVC1

  • Phát hành vào ngày 13 tháng 2009 năm XNUMX
  • Nó chạy trên.NET 3.5
  • Visual Studio 2008
  • Kiến trúc mẫu MVC với WebForm Engine
  • Các tính năng chính bao gồm Html & Kiểm tra đơn vị, Trình trợ giúp Ajax, Định tuyến, v.v.

ASP.NET MVC2

  • Phiên bản này phát hành vào ngày 10 tháng 2010 năm XNUMX
  • Chạy trên .NET 3.5,4.0 và với Microsoft Visual Studio 2008
  • Bao gồm Tính năng như người trợ giúp theo mẫu, người trợ giúp Ul với giàn giáo tự động và các mẫu có thể tùy chỉnh
  • Nó hỗ trợ các Thuộc tính DataAnnotations để áp dụng xác thực mô hình ở phía máy khách và máy chủ

ASP.NET MVC3

  • Nó được phát hành vào ngày 13 tháng 2011 năm XNUMX
  • Chạy trên .NET 4.0 và với Microsoft Visual Studio 2010
  • Sử dụng NuGet để cung cấp phần mềm và cho phép bạn quản lý các phần phụ thuộc trên nền tảng
  • Hơn JavaHỗ trợ tập lệnh với jQuery Validation và JSON binding
  • Nó cung cấp các tính năng như công cụ xem Razor; Thuộc tính Chú thích dữ liệu nâng cao để xác thực mô hình ở cả phía máy khách và máy chủ

ASP.NET MVC4

  • Phiên bản này được phát hành vào tháng 2012 năm XNUMX
  • Nó chạy trên .NET 4.0, 4.5 và với Visual Studio 2010 & Visual Studio 2012
  • Cải tiến cho các mẫu dự án mặc định
  • Cung cấp các tính năng như mẫu dự án di động sử dụng jQuery Mobile, hỗ trợ tác vụ cho Bộ điều khiển không đồng bộ, đóng gói, thu nhỏ, v.v.

ASP.NET MVC5

  • Phát hành vào ngày 17 tháng 2013 năm XNUMX
  • Chạy trên .NET 4.5, 4.5.1 và với Visual Studio 2012 & Visual OneASP.NET
  • Hỗ trợ định tuyến thuộc tính trong MVC

Đặc điểm của MVC

  • Khả năng kiểm tra dễ dàng và không ma sát
  • Toàn quyền kiểm soát HTML của bạn, JavaScript và URL
  • Tận dụng hiện có ASP.Net Tính năng
  • Một tùy chọn trình bày mới cho ASP.Net
  • Cách lập trình Asp.Net đơn giản hơn
  • Phân tách logic rõ ràng: Model, View, Controller
  • Hướng phát triển thử nghiệm
  • Hỗ trợ phát triển song song

Những điều cần nhớ khi tạo ứng dụng MVC

Dưới đây là một số điều hữu ích trong hướng dẫn ASP.NET MVC này mà bạn cần nhớ để tạo ứng dụng MVC:

  • Bạn cần nhớ rằng ASP .net MVC KHÔNG phải là sự thay thế cho các ứng dụng dựa trên biểu mẫu web ASP.Net
  • Cách tiếp cận phát triển ứng dụng MVC phải được quyết định dựa trên các yêu cầu và tính năng ứng dụng do ASP .net MVC cung cấp để phù hợp với nhu cầu phát triển cụ thể.
  • Quá trình phát triển ứng dụng với ASP .NET MVC phức tạp hơn so với các ứng dụng dựa trên biểu mẫu web.
  • Khả năng bảo trì ứng dụng luôn cao hơn với việc phân tách các tác vụ ứng dụng.
Mô hình kiến ​​trúc MVC
Mô hình kiến ​​trúc MVC

MVC là một mô hình kiến ​​trúc phần mềm tuân theo phương pháp phân tách các mối quan tâm. Trong mô hình này, các ứng dụng .Net được chia thành ba phần được kết nối với nhau được gọi là Model, View và Controller.

Mục tiêu của mẫu MVC là mỗi phần này có thể được phát triển, thử nghiệm một cách tương đối tách biệt và cũng được kết hợp để tạo ra một ứng dụng rất mạnh mẽ.

Hãy xem tất cả chúng một cách chi tiết:

mô hình

Đối tượng mô hình là các phần của ứng dụng thực hiện logic cho hoạt động của ứng dụng. miền dữ liệu. Nó lấy và lưu trữ trạng thái mô hình trong cơ sở dữ liệu. Ví dụ: đối tượng sản phẩm có thể lấy thông tin từ một cơ sở dữ liệu, hoạt động trên nó. Sau đó ghi thông tin trở lại bảng sản phẩm trong máy chủ SQL.

Lượt xem

Chế độ xem là các thành phần được sử dụng để hiển thị giao diện người dùng (UI) của ứng dụng còn được gọi là viewmodel trong MVC. Nó hiển thị ứng dụng .Net MVC được tạo từ dữ liệu mô hình.

Ví dụ phổ biến là chế độ xem chỉnh sửa của bảng Mục. Nó hiển thị các hộp văn bản, cửa sổ bật lên và hộp kiểm dựa trên trạng thái hiện tại của sản phẩm & đối tượng.

Người điều khiển

Bộ điều khiển xử lý sự tương tác của người dùng, làm việc với mô hình và chọn chế độ xem để hiển thị màn hình Ul đó. Trong ứng dụng .Net MVC, chế độ xem chỉ hiển thị thông tin, bộ điều khiển quản lý và phản hồi thông tin đầu vào và tương tác của người dùng bằng các bộ lọc hành động trong MVC.

Ví dụ: bộ điều khiển quản lý các giá trị chuỗi truy vấn và chuyển các giá trị đó cho mô hình.

Biểu mẫu web so với MVC

Thông số WebTừ VMC
Mô hình Biểu mẫu web Asp.Net tuân theo mô hình phát triển theo hướng sự kiện. Asp.Net MVC sử dụng mô hình phát triển dựa trên mẫu MVC.
Được sử dụng từ Đã tồn tại từ năm 2002 Nó được phát hành lần đầu tiên vào năm 2009
Hỗ trợ trạng thái Xem Asp.Net Web Form hỗ trợ trạng thái xem để quản lý trạng thái ở phía máy khách. .Net MVC không hỗ trợ trạng thái xem.
loại URL Biểu mẫu web Asp.Net có URL dựa trên tệp. Điều đó có nghĩa là tên tệp tồn tại trong URL và chúng phải tồn tại về mặt vật lý. Asp.Net MVC có các URL dựa trên tuyến đường có nghĩa là các URL được chuyển hướng đến bộ điều khiển và hành động.
cú pháp Asp.Net MVC tuân theo Cú pháp biểu mẫu web. Asp.Net MVC tuân theo cú pháp tùy chỉnh.
Kiểu xem Biểu mẫu web, các chế độ xem được liên kết chặt chẽ với Mã phía sau (ASPX-CS), tức là logic. MVC, Chế độ xem và logic luôn được giữ riêng biệt.
Cái nhìn và cảm nhận nhất quán Nó có các trang chính để có cái nhìn nhất quán. Asp.Net MVC có bố cục để có giao diện nhất quán.
Khả năng tái sử dụng mã Biểu mẫu web cung cấp Kiểm soát người dùng để có thể sử dụng lại mã. Asp.Net MVC đã cung cấp chế độ xem một phần để có thể sử dụng lại mã.
Kiểm soát HTML Less kiểm soát HTML được hiển thị. Kiểm soát hoàn toàn HTML
Quản lý nhà nước Quản lý trạng thái tự động của các điều khiển. Quản lý trạng thái thủ công.
Hỗ trợ TDD Yêu cầu TDD yếu hoặc tùy chỉnh. Khuyến khích và bao gồm TDD!

Ưu điểm của ASP.NET MVC

  • Các ứng dụng có khả năng bảo trì cao theo mặc định
  • Nó cho phép bạn thay thế bất kỳ thành phần nào của ứng dụng.
  • Hỗ trợ tốt hơn cho Phát triển dựa trên thử nghiệm
  • Các ứng dụng phức tạp dễ quản lý vì được phân chia thành Model, View và Controller.
  • Cung cấp cơ chế định tuyến mạnh mẽ với mẫu bộ điều khiển phía trước
  • Cung cấp khả năng kiểm soát tốt hơn đối với hành vi ứng dụng bằng cách loại bỏ trạng thái xem và biểu mẫu dựa trên máy chủ
  • Các ứng dụng .Net MVC được hỗ trợ bởi đội ngũ lớn các nhà phát triển và thiết kế web
  • Nó cung cấp nhiều quyền kiểm soát hơn đối với các hành vi của ứng dụng. Nó cũng sử dụng băng thông được tối ưu hóa cho các yêu cầu được gửi tới máy chủ

Nhược điểm của ASP.NET MVC

  • Bạn không thể xem bản xem trước trang thiết kế như trang .aspx.
  • Bạn cần chạy chương trình mỗi lần để xem thiết kế thực tế của nó.
  • Hiểu được dòng chảy của ứng dụng có thể là một thách thức
  • Việc triển khai khá phức tạp nên không phải là lựa chọn lý tưởng cho các ứng dụng cấp nhỏ
  • Thật khó để học MVC cho ASP.NET vì nó đòi hỏi sự hiểu biết sâu sắc về mẫu MVC

Các phương pháp hay nhất khi sử dụng ASP.Net MVC

  • Tạo một assembly riêng cho MODEL trong trường hợp mã lớn và phức tạp để tránh mọi tình huống không mong muốn
  • Mô hình nên bao gồm logic nghiệp vụ, bảo trì phiên, phần xác thực và phần logic dữ liệu.
  • VIEW không được chứa bất kỳ logic nghiệp vụ và bảo trì phiên nào, hãy sử dụng ViewData để truy cập dữ liệu trong View
  • Truy cập dữ liệu và logic nghiệp vụ sẽ không bao giờ xảy ra trong ControllerViewData
  • Bộ điều khiển chỉ chịu trách nhiệm chuẩn bị và trả về chế độ xem, gọi mô hình, chuyển hướng đến hành động, v.v.
  • Xóa mã Demo khỏi ứng dụng khi bạn tạo nó Xóa AccountController
  • Chỉ sử dụng công cụ xem cụ thể để tạo đánh dấu HTML từ chế độ xem của bạn vì đây là sự kết hợp giữa HTML và mã lập trình.

Tổng kết

  • ASP.NET MVC là một framework phát triển web nguồn mở từ Microsoft cung cấp một Kiến trúc Bộ điều khiển Chế độ xem Mô hình.
  • ASP.net MVC cung cấp một giải pháp thay thế cho các biểu mẫu web ASP.net để xây dựng các ứng dụng web.
  • Vấn đề chính với webForms ASP.net là hiệu suất.
  • ASP.net MVC cung cấp khả năng kiểm tra dễ dàng và dễ dàng với toàn quyền kiểm soát HTML và URL của bạn.
  • Bạn cần nhớ rằng ASP .net MVC KHÔNG phải là sự thay thế cho các ứng dụng dựa trên biểu mẫu web ASP.Net.
  • Cách tiếp cận phát triển ứng dụng MVC hoặc Vòng đời ASP.NET MVC phải được quyết định dựa trên các yêu cầu và tính năng ứng dụng do ASP .net MVC cung cấp để phù hợp với nhu cầu phát triển cụ thể.
  • Theo mặc định, ASP.NET MVC cung cấp các ứng dụng có khả năng bảo trì cao.
  • Với ASP.net bạn không thể xem bản xem trước trang thiết kế như trang .aspx.
  • Cách thực hành tốt nhất là mô hình nên bao gồm logic nghiệp vụ, bảo trì phiên, phần xác thực và phần logic dữ liệu.