Những câu hỏi phỏng vấn ASP.NET MVC và hướng dẫn trả lời chi tiết

Phụ lục
cau-hoi-phong-van-aspnet

Thông thường việc phỏng vấn lập trình viên có rất nhiều cách như phỏng vấn gặp mặt, phỏng vấn qua các bài test ngay tại công ty,.. Tuy nhiên, không thể thiếu những câu hỏi phỏng vấn sơ bộ để kiểm tra năng lực của ứng viên. Trong bài viết này devwork.vn sẽ cho bạn biết về các câu hỏi phỏng vấn ASP.NET MVC chuẩn nhất để bạn có thể tự tin bước vào vòng phỏng vấn nhé!

ASP.NET MVC là gì?

ASP.NET MVC viết tắt từ Model-View-Controller. Đây là một framework có nhiệm vụ hỗ trợ pattern MVC tới ASP.NET. MVC phân chia pattern của ứng dụng làm 3 phần đó là model, controller và view.

  • Model có nhiệm vụ lưu trữ giữ liệu của ứng dụng và cả trạng thái của nó. Nó có thể là một cơ sở dữ liệu và cũng có thể chỉ đóng vai trò là một tập tin XML theo từng trường hợp. 
  • Controller phụ trách xử lý những tương tác giữa người dùng với website. 
  • View được xem như là một giao diện người dùng, sử dụng bởi người truy cập website bạn sở hữu để thống kê được các dữ liệu. 

ASP.NET MVC tương đối nhẹ và nó cung cấp khả năng có thể kiểm thử, trong đó có được tích hợp với các tính năng hiện tại của ASP.NET.

Lý do nên sử dụng ASP.NET MVC ?

Với câu hỏi phỏng vấn asp.net mvc về lý vì sao nó nên là một framework được lựa chọn, hãy đưa ra những dẫn chứng về các tính năng nổi bật hỗ trợ cho các nhà phát triển.

  • SoC ( Separation of Concern ) hay còn là phân tách mối bận tâm.  Framework này sẽ đem đến sự phân tách rõ ràng của giữa các model, logic của người dùng và giao diện người dùng cũng như dữ liệu. 
  • Được cung cấp bộ control mạnh mẽ từ JavaScript, HTML và CSS. Nó có ưu điểm và hiệu năng nổi bật nêu so với các control được cung cấp từ những hình thức truyền thống của website.
  • Có khả năng kiểm thử.
  • Gọn nhẹ và tối ưu. Đây là một Framework không dùng đến Viewstate.
  •  Không chứa một khái niệm về View ở bên trong và tối ưu kích thước của control trong HTML. Từ đó giúp hỗ trợ tăng tốc độ tải trang.
  • Tích hợp MVC và jQuery, bạn có thể thực hiện viết code trong các trình duyệt website.
  • Được bổ sung các API web Services. 

Cơ chế hoạt động của ASP.Net MVC

  1. User tiến hành gửi 1 yêu cầu tới server bằng phương pháp truyền vào 1 URL bên trong browser
  2. Yêu cầu của user đầu tiên sẽ được gửi tới controller, sau đó controller sẽ tiến hành xử lý, nếu yêu cầu cần phải truy xuất dữ liệu thì controller sẽ tiến hành chuyển qua tầng model.
  3. Ở model, dữ liệu sẽ được truy xuất từ database và được truyền qua view nhờ controller.
  4. Dữ liệu sẽ được chuyển từ model sang view nhờ Controller.
  5. View sẽ là tầng cuối cùng kết nối với User, tất cả dữ liệu sẽ được hiển thị cho User nhờ View.

Phân biệt điểm giống và khác của mô hình MVC và mô hình 3 lớp?

  • Giống nhau:
  • Đều là mô hình kiến trúc được áp dụng cho lập trình và tách thành 3 phần
  • Có sự tách biệt giữa ngôn ngữ lập trình, xử lý logic và môi trường phát triển.
  • Các thành phần của mô hình MVC và mô hình 3 lớp có điểm tương tự Presentation Layer và View
  • Khác biệt:
  • Phương pháp xử lý yêu cầu có sự khác biệt.
  • Model là chức năng của cả lớp Business trong MVC. Còn với mô hình 3 lớp là Data Access.
  • Mô hình 3 lớp được sử dụng khi lập trình ứng dụng còn MVC được sử dụng phổ biến với lập trình web.

Khái niệm Routing trong MVC ?

ASP.NET Routing cho bạn được phép dugnf các url không trực tiếp đến 1 file cụ thể tại website, điều đó giúp cho các url trở nên thân thiện người dùng hơn.

Khái niệm HTML Helpers trong MVC ?

HTML Helpers trong MVC được sử dụng để tạo ra các thẻ html thay bằng việc phải viết tay, tối ưu thời gian cho các nhà phát triển.

Khác biệt của “HTML.TextBox” với “HTML.TextBoxFor” ?

  • Phương thức Html.TextBox () sẽ tạo ra phần tử là <input type="text" />  cùng với tên đã được chỉ định, giá trị và cả những thuộc tính html.
  • Html.TextBoxFor thì sẽ tạo ra một phần tử input text cùng với thuộc tính model cụ thể dùng một biểu thức lambda.

Code mapping route thì được viết ở đâu?

Code mapping route thường được viết bên trong file Global.asax. Hoặc bạn có thể tạo file riêng rồi tại Global.asax add vào. Đặc biệt với MVC 4 thì sẽ được tạo riêng một file sẵn là RouteConfig.cs tại thư mục App_Start

Làm sao để từ 1 view này đi đến một view khác sử dụng hyperlink?

Với câu hỏi phỏng vấn asp.net mvc này bạn có thể trả lời ngắn gọn rằng để từ view này đi đến 1 view khác sử dụng hyperlink thì dùng thẻ a của HTML. 

Phương pháp để quy ước rằng một action chỉ được phép truy cập dựa vào phương thức GET hoặc là POST?

Để quy ước rằng một action chỉ được phép truy cập dựa vào phương thức GET hoặc là POST bạn hãy dùng các HttpPost và attribute HttpGet ở trên đầu mỗi Action.

Razor hay ASPX tốt hơn? Vì sao?

  • Razor được giới thiệu và xuất hiện từ MVC 3.0. Nó dùng Layout Page cho trang chính và dùng razor page cho trang con.
  • Aspx xuất hiện từ phiên bản MVC 1. Nó sử dụng Master page cho trang chính và dùng ASPX cho trang con.
  • Hiệu suất của Razor chậm hơn so với ASPX..
  • Razor chăn cross-site scripts attacks bằng phương pháp mã hóa scripts và các thẻ html trước lúc hiển thị, nhưng aspx thì không.
  • Razor được dùng phổ biến hơn so với ASPX bởi dễ tiếp cận và sự chuyên nghiệp. 

 Minification và Bundling trong MVC là gì?

  • Minification trong MVC là xử lý với mục đích bỏ đi những khoảng trống thừa không có mục đích, xuống dòng và những comment ở trong code để tối ưu cỡ và cải thiện thời gian tải.
  • Bundling gồm một nhóm file được tham chiếu từ một tên duy nhất và loaded từ HTTP request.

Điểm khác biệt của View và Partial View trong Asp.net mvc?

  • View có chứa layout page và các markup tags. Viewstart page sẽ được tiến hành render trước các view và so với Partial view thì view nặng hơn. 
  • Partial View không có chứa layout page và nó không xác nhận một viewstart.cshtml. Mục đích thiết kế Partial view là để render trong view. 

Nhiệm vụ của ViewModel trong MVC ?

ViewModel trong MVC là một class đơn giản với những thuộc tính. Nó được dùng với mục đích là liên kết với các view.

Bundleconfig dùng MVC4 với mục đích gì?

“BundleConfig.cs” ở trong MVC4 được sử dụng với mục đích đăng ký những bundle bởi - bundling (hệ thống gộp) và minification (thu nhỏ).



Khái niệm một Application pool và mục đích của nó ?

Application pool có tác dụng cho phép bạn có thể cô lập các ứng dụng của mình, ngay cả trong trường hợp những ứng dụng ấy đang được chạy trên cùng máy chủ. Như vậy, dù xảy ra trường hợp có bị lỗi một ứng dụng thì những ứng dụng khác cũng không bị ảnh hưởng.

Razor View Engine là gì?

Razor View Engine là bản cập đầu tiên mang tính chất chính thức dùng để hiển thị HTML trong MVC 3. Razor View Engine được thiết kế đặc biệt dành cho View engine syntax. Đây không phải câu hỏi phỏng vấn asp.net mvc khó nhưng cần hiểu bản chất về MCV để có thể trả lời chính xác. 

Action trong MVC là gì?

Trong MVC các Action là một dạng phương thức thuộc lớp Controller, nó chịu trách nhiệm phải trả về View hoặc là Json.

Action thường sẽ chỉ trả về kiểu ActionResult và nó sẽ được gọi bằng phương thức InvokeAction từ Controller.

Các Non Action method trong MVC là gì?

Trong MVC, tất cả những public method đều được coi là Action. Vậy nên trong trường hợp bạn đang tạo một method nhưng không muốn dùng nó như là một action method, thì bắt buộc phải thêm thuộc tính "NonAction" và method đó. 

ViewState là gì?

ViewState là phương pháp được các lập trình viên sử dụng để bảo toàn value của page cũng như các control khi postback. ViewState là một dạng quản lý state ở page-level. 

Devwork đã cùng bạn tìm hiểu những câu hỏi phỏng vấn asp.net mvc và hướng dẫn trả lời chi tiết. Chúng tôi hy vọng những thông tin này sẽ hữu ích với bạn. Và nếu bạn đang quan tâm đến lĩnh vực tuyển dụng thì đừng bỏ qua Devwork - Nền tảng tuyển dụng IT kết nối HR Freelancer.

Devwork

Devwork là Nền tảng TUYỂN DỤNG IT CẤP TỐC với mô hình kết nối Nhà tuyển dụng với mạng lưới hơn 30.000 headhunter tuyển dụng ở khắp mọi nơi.Với hơn 1800 doanh nghiệp IT tin dùng Devwork để :

  • Tối ưu chi phí
  • Tiết kiệm thời gian
  • Tăng tốc tuyển dụng tối đa
  • Đăng ký ngay Devwork trong hôm nay để tuyển dụng những tài năng ưu tú nhất.

    Tag Cloud:

    Tác giả: Lê Thị Ngọc Anh

    Link chia sẻ

    Bình luận

    Việc làm tại Devwork

    khám phá các cơ hội việc làm tốt nhất tại Devwork Xem thêm

    Bài viết liên quan

    Danh sách bài viết liên quan có thể bạn sẽ thích Xem thêm
    file-xml-la-gi

    File XML là gì? Tìm hiểu tất tần tật về file XML từ A-Z

    10:04 25/04/2025

    File XML  là một ngôn ngữ đánh dấu linh hoạt, đã trở thành một phần không thể thiếu trong nhiều ứng dụng khác nhau. Vậy XML là gì? File XML là gì? File có đuôi xml là gì? Hãy cùng Devwork khám phá tất tần tật về XML trong bài viết này....

    Mạng CDN là gì? Hiểu đúng bản chất và cách hoạt động chi tiết

    16:56 24/04/2025

    Mạng CDN (Content Delivery Network) đóng vai trò then chốt trong việc tối ưu hóa hiệu suất website và ứng dụng trong thời đại số hiện nay. Bài viết này sẽ giúp bạn hiểu sâu về bản chất, cơ chế hoạt động và những lợi ích mà mạng CDN mang lại cho cá nhân và doanh nghiệp trong kỷ nguyên dữ liệu số.

    mang-cdn-la-gi

    Kubernetes là gì? Cách hoạt động, thành phần và ứng dụng thực tế

    16:47 24/04/2025

    Kubernetes là gì và vì sao nó trở thành công nghệ không thể thiếu cho doanh nghiệp? Devwork hướng dẫn bạn khám phá nền tảng quản lý container mạnh mẽ này, giúp các doanh nghiệp tối ưu hóa quy trình vận hành và phát triển phần mềm hiệu quả trong môi trường đám mây.

    kubernetes-la-gi

    Business Intelligence là gì? Ứng dụng BI giúp doanh nghiệp dẫn đầu thị trường

    16:41 24/04/2025

    Business Intelligence là gì? Đây là chìa khóa giúp doanh nghiệp khai thác dữ liệu hiệu quả, tối ưu hóa quy trình ra quyết định và tăng lợi thế cạnh tranh. Trong bài viết này, Devwork sẽ giúp bạn hiểu rõ khái niệm, lợi ích và cách ứng dụng Business Intelligence vào thực tế doanh nghiệp.

    business-intelligence-la-gi
    quantity-surveyor-qs-la-gi

    ( Quantity Surveyor ) QS là gì: Cẩm nang về nghề Kỹ sư Dự toán 2025

    00:00 18/04/2025

    QS là gì? Kỹ sư Dự toán (Quantity Surveyor) đang trở thành một trong những nghề nghiệp được săn đón nhất trong ngành xây dựng hiện nay. Trong bài viết này, Devwork giới thiệu đến bạn bài viết chi tiết về công việc, kỹ năng cần thiết và tiềm năng phát triển của nghề QS.

    it-comtor-la-gi

    IT Comtor là gì? Nghề "hot" cho người giỏi tiếng Nhật, mê công nghệ

    14:29 23/04/2025

    Trong bối cảnh hợp tác IT Nhật-Việt ngày càng phát triển, vai trò của IT Comtor đã trở thành mắt xích quan trọng không thể thiếu. Bài viết sẽ giúp bạn hiểu rõ về IT Comtor là gì, cơ hội nghề nghiệp và lộ trình phát triển trong lĩnh vực đầy tiềm năng này.