2011-01-14 9 views
0

ASP.NET에서 쿼리 문자열을 사용하려고합니다. I는 다음과 같은 형식 여기쿼리 문자열 사용/

http://localhost/website/1/?callback=?

1 프로파일의 ID를 의미하는 요구가있다. 즉, id = 1의 일부 정보가 문자열을 통해 가져옵니다.

이 경우 website/2/?callback=?이면 id는 2가됩니다. 내 질문은이 /id/을 쿼리 문자열로 사용하려면 어떻게해야합니까? 프로필 ID를 가져 오는 데 사용됩니다. 이것은 내 우선적으로 /id/ 형식을 사용하는 것이 었습니다. 그렇지 않으면 두 개를 사용하여 가져올 수있었습니다. ?'s

id = 1 인 경우이 페이지의 DB에서 ID = 1 세부 사항을 가져 오려고합니다. http://localhost/website/1/?callback=?

답변

0

귀하의 경우 ID는 검색어 문자열이 아닌 PATH에 있습니다. ASPX 페이지에서 Request.Path을 통해 경로에 액세스 할 수 있습니다. 거기에서 당신은 ID가있을 것으로 예상되는 경로의 부분에 도달하기 위해 문자열 해석을해야 할 것입니다.

아마도 저는 int.Parse(Request.Path.Split(new char[] {'/'}, StringSplitOptions.RemoveEmptyEntries)[1])과 같은 것을 사용할 것입니다. 그러나 간략하게하기 위해이 라인을 꽤 조밀하게 만들었습니다. 처음에는 int.Parse() 대신 int.TryParse()을 사용해야합니다. 이 코드는 ID가 항상 URL의 동일한 위치에 있다고 가정합니다. 예를 들어 "/ website/2 /"및 "/ user/2 /"에서는 작동하지만 "/ website/somethingelse/2 /"에서는 작동하지 않습니다.