이번 시간 부터는 MVC의 기본기능 보다는 트러블 슈팅이나 , 팁에 대한 내용을 주로 다루어 보도록 하겠습니다.


MVC를 사용할 때 몇몇 개의 기능은 기존 ASP.NET Classic 보다 부족하다고 느껴질 수 있습니다. 특히나 사용자가 어떠한 페이지를 생성해야 할 때 반드시 그에 매칭되는 Action 을 만들어야 하하는 것 디자이너와의 협업에서 상당한 불편함을 가져올 수 있습니다. 이는 MVC 초반부터 항상 제기되어 오던 문제이며 , MVC의 개발상의 약점으로 손꼽히곤 했습니다. 이번시간에는 간단하게 나마 이러한 문제점들을 해결하기 위한 방법을 공유하고자 합니다.

 

 

HandleUnknownAction?

 

HandleUnknownAction 은 컨트롤러에서 Action 에 대한 요청을 받았을 때 해당 액션이 없으면 호출되는 메서드 입니다. 이 메서드가 구현되지 않았을 때 사용자는 다음과 같은 에러를 보게 됩니다.

 


 19_1.png
[그림 : ActionResult 없기 때문에 404 에러를 반환하는 모습]

 

 

흔히 볼수 있는 404 Error 입니다. 하지만 Test폴더에는 여전히 Test.cshtml 이 존재하는 상태입니다. 이제 이것을 HandleUnknownAction 을 이용해서 나타나게 하겠습니다.

 

protected override void HandleUnknownAction(string actionName)

{

   this.View(actionName).ExecuteResult(this.ControllerContext);

}


해당 메서드를 실행하게 되면 ActionName을 받았을 때 해당 컨트롤러를 이용해서 View를 즉 ActionResult 의 실행 없이 실행되게 됩니다.

 

 19_2.png
[그림 : ActionResult 없이 View를 호출]

 

 

Summary
웹 개발에서 협업이라는 이슈는 가장 오래되고 진부하지만 중요한 이슈입니다. 그 중심에는 컴파일이라는 복병이 숨어 있게 되는데 , 이 문제 때문에 디자이너가 자신이 만든 파일을 볼수 없다면 이 또한 답답한 일일 것입니다. HandleUnknownAction은 이러한 문제를 해결하는데 아주 유용하며 , 또한 다른 에러를 처리하기도 용이합니다. 다음장에서는 ActionFilter 를 응용한 사례를 소개하도록 하겠습니다.



ASP.NET MVC3 시리즈 강좌 리스트
[ASP.NET MVC3강좌] 1. MVC(Model- View – Controller) 란 무엇인가.
[ASP.NET MVC3강좌] 2. MVC 환경 세팅
[ASP.NET MVC3강좌] 3. HelloWorld MVC
[ASP.NET MVC3강좌] 4. Layout , Partial Page
[ASP.NET MVC3강좌] 5. Model 을 View에서 표현하기
[ASP.NET MVC3강좌] 6. MVC의 매력적인 기능 스캐폴딩!(With EF)
[ASP.NET MVC3강좌] 7. 유효성 검사
[ASP.NET MVC3강좌] 8. ModelBinder
[ASP.NET MVC3강좌] 9. MVC ActionResult 종류 살펴보기
[ASP.NET MVC3강좌] 10. MVC 처리 프로세스 & ActionFilter
[ASP.NET MVC3강좌] 11. Global.asax
[ASP.NET MVC3강좌] 12. (번외편) Repository Pattern
[ASP.NET MVC3강좌] 13. MEF(Managed Extensibility Framework) in MVC
[ASP.NET MVC3강좌] 14. Javascript in MVC
[ASP.NET MVC3강좌] 15. Javascript Intellicense in Visual Studio
[ASP.NET MVC3강좌] 16. JSON in MVC - 1
[ASP.NET MVC3강좌] 17. JSON in MVC - 2
[ASP.NET MVC3강좌] 18. HTML5 in MVC
[ASP.NET MVC3강좌] 19. MVC Tips 1 - HandleUnknownAction
[ASP.NET MVC3강좌] 20. MVC Tips 2 - Cache ActionFilter

번호 제목 글쓴이 날짜 조회 수
공지 SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 40406
공지 Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 22107
공지 [공지] 이렇게 SQLER에서 처음 글쓰기를 시작해 보는건 어떨까요? [1] 코난 2010.08.19 113360
138 [동영상 강좌] 3. HelloWorld MVC LoveCiel 2011.07.08 9488
137 [동영상 강좌] 2. MVC 환경 세팅 LoveCiel 2011.07.08 10729
136 [동영상 강좌] 1. MVC(Model- View – Controller) 란 무엇인가. [2] LoveCiel 2011.07.08 13951
135 [ASP.NET MVC3강좌] 20. MVC Tips 2 - Cache ActionFilter [5] LoveCiel 2011.06.23 14405
» [ASP.NET MVC3강좌] 19. MVC Tips 1 - HandleUnknownAction [3] LoveCiel 2011.06.23 13307
133 [ASP.NET MVC3강좌] 18. HTML5 in MVC [1] LoveCiel 2011.06.20 16362
132 [ASP.NET MVC3강좌] 17. JSON in MVC - 2 LoveCiel 2011.06.20 15345
131 [ASP.NET MVC3강좌] 16. JSON in MVC - 1 [4] LoveCiel 2011.06.20 25335
130 [ASP.NET MVC3강좌] 15. Javascript Intellicense in Visual Studio [7] LoveCiel 2011.06.20 11607
129 [ASP.NET MVC3강좌] 14. Javascript in MVC [1] LoveCiel 2011.06.20 15096
128 [ASP.NET MVC3강좌] 13. MEF(Managed Extensibility Framework) in MVC [1] LoveCiel 2011.06.16 29043
127 [ASP.NET MVC3강좌] 12. (번외편) Repository Pattern [1] LoveCiel 2011.06.16 19014
126 [ASP.NET MVC3강좌] 11. Global.asax LoveCiel 2011.06.16 15866
125 [ASP.NET MVC3강좌] 10. MVC 처리 프로세스 & ActionFilter LoveCiel 2011.06.15 16414
124 [ASP.NET MVC3강좌] 9. MVC ActionResult 종류 살펴보기 LoveCiel 2011.06.15 23603
123 [ASP.NET MVC3강좌] 8. ModelBinder LoveCiel 2011.06.15 14344
122 [ASP.NET MVC3강좌] 7. 유효성 검사 [2] LoveCiel 2011.06.15 18624
121 [ASP.NET MVC3강좌] 6. MVC의 매력적인 기능 스캐폴딩!(With EF) [7] LoveCiel 2011.06.15 19963
120 WebMatrix 동영상 강좌(영문) : 오늘만 공짜... [2] 레드플러스(박용준) 2011.06.15 7844
119 [ASP.NET MVC3강좌] 5. Model 을 View에서 표현하기 LoveCiel 2011.06.14 21852





XE Login

서버에 요청 중입니다. 잠시만 기다려 주십시오...