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

    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
    gross-domestic-product-la-gi

    Gross Domestic Product là gì & Tầm quan trọng của GDP

    17:46 16/05/2025

    Gross Domestic Product là gì? Đây là câu hỏi cơ bản nhưng lại vô cùng quan trọng khi bàn về kinh tế vĩ mô. Devwork mang đến cho bạn bài phân tích toàn diện nhất về chỉ số kinh tế then chốt này, giúp bạn nắm vững cách GDP được tính toán và ứng dụng trong thực tiễn, từ hoạch định chính sách đến các quyết định đầu tư thông minh....

    Middleware là gì? Chức năng & Phân loại chi tiết

    17:41 16/05/2025

    Bạn đã bao giờ thắc mắc làm thế nào mà các hệ thống phần mềm phức tạp có thể giao tiếp với nhau một cách trơn tru? Trong bài viết này, Devwork sẽ giải đáp mọi thắc mắc của bạn về middleware là gì, vai trò quan trọng của nó trong kiến trúc phần mềm hiện đại và cách nó kết nối các thành phần khác nhau trong hệ thống.

    middleware-la-gi

    Junior là gì? Cách thức thăng tiến từ Junior lên Senior nhanh nhất

    16:38 15/05/2025

    Thuật ngữ "junior" xuất hiện phổ biến trong môi trường công việc hiện đại, đặc biệt trong lĩnh vực công nghệ thông tin. Devwork giúp bạn hiểu rõ junior là gì, sự khác biệt giữa junior và senior, cùng lộ trình phát triển sự nghiệp từ cấp độ junior đến các vị trí cao hơn.

    junior-la-gi

    Git là gì? Top 20+ Lệnh git căn bản bạn cần phải biết

    16:34 15/05/2025

    Git là gì? Nếu bạn là một lập trình viên đang tìm kiếm công cụ quản lý mã nguồn hiệu quả, bài viết từ Devwork sẽ giúp bạn khám phá toàn diện về Git - hệ thống quản lý phiên bản phân tán được sử dụng phổ biến nhất hiện nay, cùng các lệnh cơ bản giúp bạn làm việc hiệu quả ngay từ đầu.

    git-la-gi-cac-lenh-git-co-ban
    default-gateway-la-gi

    Default Gateway là gì? Cách kiểm tra Default Gateway NHANH & CHUẨN nhất

    17:34 13/05/2025

    Bạn đang thắc mắc default gateway là gì và cách kiểm tra địa chỉ này trên các thiết bị như Windows, macOS hay điện thoại? Bài viết từ Devwork sẽ giúp bạn hiểu rõ vai trò của default gateway trong kết nối mạng, cách kiểm tra nhanh và xử lý lỗi thường gặp hiệu quả.

    generator-la-gi

    Generator là gì? Nguyên lý hoạt động & ứng dụng của Generator

    17:26 13/05/2025

    Generator là gì? Bạn đang tìm hiểu về một khái niệm quan trọng trong lập trình hiện đại nhưng chưa nắm rõ ứng dụng? Bài viết từ Devwork sẽ giúp bạn hiểu tường tận về generator, cách thức hoạt động và các trường hợp ứng dụng thực tế giúp tối ưu hiệu suất cho dự án của bạn.