Tôi muốn có thể yêu cầu các tệp .html tĩnh nằm trong thư mục ~ / Views.
Bạn có thể. Câu trả lời được đánh dấu không hoàn toàn đúng, mặc dù nó đưa ra một giải pháp.
Lý do trong câu trả lời được đánh dấu là đúng, đó là web.config (cụ thể là cài đặt BlockViewHandler) trong thư mục Views ngăn không cho các tệp được truy cập trực tiếp. Nó ở đó để đảm bảo các lượt xem trong Asp.Net MVC. Nhưng nếu bạn đặt câu hỏi về việc cung cấp các tệp này trực tiếp thì bạn có thể có lý do hợp lệ để làm như vậy, chẳng hạn như sử dụng chế độ xem từng phần AngularJS (như trong trường hợp của chúng tôi) nơi chúng tôi không muốn sao chép thư mục chế độ xem với những cái tên kỳ lạ.
Vì vậy, đây là một tinh chỉnh rất đơn giản mà bạn có thể thực hiện trong tệp web.config được tìm thấy trong thư mục Chế độ xem mà không ảnh hưởng đến bảo mật của các chế độ xem mvc trong asp.net của bạn. Điều này sẽ bảo mật các tệp .cshtml như bình thường nhưng để các tệp .html của bạn yên.
Thay đổi điều này
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
--đến--
<add name="BlockViewHandler" path="*.cshtml" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />