사실 전 뭐가 발전하고 있는지, 흐름을 놓친지 하도 오래되어 다시 찬찬히 보고 있는데, 오호라~ 몇 가지 제가 좋아라 하는 기능이 기본적으로 들어 있군요^^
public ActionResult Welcome(string name, int numTimes = 1) { ViewBag.Message = "Hello " + name; ViewBag.NumTimes = numTimes; return View(); }
Controller 에 다음과 같은 함수를 정의하면,
http://localhost:12095/HelloWorld/Welcome?name=Scott&numTimes=4
과 같이 사용할 수 있군요. 이게 뭐냐구요? 웹 페이지 호출을 함수 호출하듯이 인자가 정의되어 있다는 점 – 즉 Named Parameter 를 사용하여, ASP.NET 의 불명확한 인자에 대한 처리를 명확한 API 형식으로 정의가 가능하다는 점이지요.
또 하나는 ViewBag 이 dynamic 이라 기존 정보 전달에서는 IDictionary<string, object> 가 기본이었는데, 위와 같이 속성처럼 사용이 가능하니, 문자열 타이핑 오류를 상당히 줄일 수 있겠네요^^ 다만, dynamic 속성에 대해서는 refactoring을 지원하지 않는 아쉬움이 있네요.
뭐 저야 화려한 UI를 만드는 역할이 아니라 이런 규격화된 규칙을 정하고, 사용하도록 하는 역할을 수행합니다만. 그 동안 Presentation Layer에 좀 무심했네요.
그리고 얼린 .NET 4 로 올라와야겠군요. 언제까지 .NET 3.5에 머물러 있을 수는 없을 듯 하네요.
아직 MVC 에 많은 것을 공부하지 못했지만, 기존 WebForm 방식보다는 제 맘을 끄는 기능이 많군요. Testing 도 그렇고, MVC 자체 패턴도 그렇고…
댓글 없음:
댓글 쓰기