2009-06-27 2 views
4

이 MVC 프레임 워크에서이 예제의 With 키워드와 함께 작동하는 방식을 설명 할 수 있습니까?VB.NET/ASP.NET With 및 New keyword muddle

routes.MapRoute("Default", 
       "{controller}/{action}/{id}", 
       New With {.controller = "Home", .action = "Index", .id = ""}) 

답변

2

이 구문은 VB.Net에서 익명 형식을 만드는 데 사용됩니다.

이름/값 쌍으로 즉석에서 유형을 정의 할 수 있습니다. 이름은 모두 유형의 속성으로 바뀝니다. 리플렉터에서 생성 된 어셈블리를 열면 이러한 유형을 볼 수 있습니다.

With 구문 부분이 당신을 속일 수 없습니다. 이 기능은 VB.Net의 "With"컨텍스트 기능과 아무 관련이 없습니다. "."이외 값 이름에 접두어.

1

그것은 지정된 특성을 가진 새로운 익명 클래스 을 만듭니다.

자세한 내용은 MSDN.

1

여기서 "new"는 anonymous 클래스를 선언합니다.

이 클래스에는 정식 정의가 없습니다 (즉, "공용 클래스"정의 없음). 그 구조는 뒤에있는 곱슬의 항목에 의해 정의됩니다. 따라서 하나의 문장으로 클래스를 정의하고 구성합니다.