-
Notifications
You must be signed in to change notification settings - Fork 47
Open
Description
Mvc sẽ sử dụng một phiên bản thu gọn của Asp.Net Core Razor, các tính năng được hỗ trợ bao gồm:
- Nhúng các đoạn code C# sử dụng cú pháp: @() (dùng cho biểu thức) hoặc @{} (dùng cho khối lệnh).
- Định nghĩa kiểu của Model sử dụng cú pháp @model .
- Cho phép sử dụng using với cú pháp @using
- Hỗ trợ DI sử dụng cú pháp @Inject
- Hỗ trợ các đối tượng ViewBag và ViewData.
- Hỗ trợ Layout view (tham khảo: https://learn.microsoft.com/en-us/aspnet/core/mvc/views/layout?view=aspnetcore-7.0)
Các bước thực thi về cơ bản sẽ như sau:
- Mvc middleware dịch mã razor thành một file C#.
- Dùng Roslyn để dịch thành một Assembly.
- Load assembly vào bộ nhớ và khởi tạo một object.
- Gọi hàm InvokeAsync trên object đó.
- Lấy kết quả trả về và tạo một ViewResultStreamContent.
- Đưa content object vào response, đặt HTTP phù hợp (200 OK) và trả về cho Mini-Web-Server.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels