ASP.NET MVC의 다중 매개변수 라우팅에 대한 자세한 설명
ASP.NET MVC 기반 RESTful API를 설계할 때 컨트롤러 작업 메서드에 여러 매개변수를 전달해야 하는 경우가 많습니다. 이 기사에서는 이러한 상황을 처리하는 방법을 살펴보고 사용 가능한 방법을 자세히 설명합니다.
쿼리 문자열을 사용하여 매개변수 전달
기본적으로 MVC는 쿼리 문자열 매개변수를 작업 메서드 매개변수에 자동으로 매핑합니다. 다음 방법을 고려하세요.
<code class="language-csharp">public ActionResult GetImages(string artist, string apiKey)</code>
다음과 같은 HTTP 요청:
<code>http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist=cher&api_key=my_key</code>
GetImages 작업을 호출하면 아티스트 및 apiKey 매개변수가 채워집니다.
"id" 매개변수의 특수한 경우
URL 경로에 쿼리 문자열 대신 "id"라는 매개변수가 포함될 수 있습니다. 예를 들면 다음과 같습니다.
<code class="language-csharp">public ActionResult GetImages(string id, string apiKey)</code>
다음 URL을 사용하여 호출할 수 있습니다:
<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher?api_key=my_key</code>
사용자 정의 라우팅 규칙
보다 복잡한 경우 MVC는 라우팅 규칙을 맞춤설정하여 작업을 찾을 수 있는 유연성을 제공합니다. global.asax 파일에서 기본 라우팅 모드를 지정하는 Routes.MapRoute 메서드를 편집합니다.
예: 특정 매개변수를 사용한 사용자 정의 라우팅
다음과 같은 URL을 처리하려면:
<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher/my_key</code>
다음 경로를 추가할 수 있습니다.
<code class="language-csharp">routes.MapRoute( "ArtistImages", "{controller}/{action}/{artistName}/{apiKey}", new { controller = "Artist", action = "GetImages", artistName = "", apiKey = "" } );</code>
이 사용자 지정 경로를 사용하면 GetImages 작업이 호출되고 아티스트 이름 및 apiKey 매개변수가 URL 세그먼트에서 채워집니다.
위 내용은 ASP.NET MVC에서 여러 매개변수를 라우팅하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!