작은 CMS와 같은 컨트롤러 만 있으면됩니다. 가장 쉬운 방법은 다음과 같습니다.MVC2보기가 존재하지 않을 때 HTTP 404가 반환됩니다.
public class HomeController : Controller {
public ActionResult View(string name) {
if (!ViewExists(name))
return new HttpNotFoundResult();
return View(name);
}
private bool ViewExists(string name) {
// How to check if the view exists without checking the file itself?
}
}
사용 가능한보기가없는 경우 HTTP 404를 반환하는 방법은 무엇입니까?
아마도 적절한 위치에서 파일을 검사하고 결과를 캐시 할 수 있지만 실제로는 더러워 보입니다.
감사합니다.
Dmitriy.
대린를, 그 아름다운입니다! 여기에 또 다른 고려해야 할 사항 : 이미'ViewEngineResult'의 인스턴스를 가지고 어떻게'ViewResult'가 다시 검색을 수행하지 않도록 다시 사용할 수 있습니까? –
릴리스 모드 뷰 위치에서 컴파일 할 때 캐시되므로 걱정하지 마십시오. –
또한이 방법으로 발견 된 견해가 적절히 처리되어야한다고 생각합니다. –