2017-12-30 8 views
0

그래서 .ashx 파일에서 제공하는 매개 변수의 데이터를 가져 오는이 코드가 있지만 매개 변수가 있지만 실행될 때마다 항상 ""이 반환됩니다. 내가.ashx에서 매개 변수 얻기

http://localhost:21614/AlbumManager.aspx?mp3=AudioHandler.ashx?ID=ACHI-0001

과 .ASHX 파일이

public void ProcessRequest (HttpContext context) { 
    string ID = context.Request.QueryString["ID"]; 
} 

과 같은 내부 ID를 얻기 위해 사용되는 코드처럼 보이는 함께 일하고 있어요

URL 내가 위해 놓친 일이 있나요 매개 변수를 얻으려면?

APPEND : 01/01/2018 (10:50 UTC + 0) 여기 내 문제는 내가 this site을 내 코드에 대한 참조로 사용하고 조금 수정 한 것입니다. 문자열 (내 SQL에서 사용되는 데이터 유형)이지만 URL에 제공된 매개 변수를 반환하지 않습니다.

는 또한 I 코드로부터 .QueryString를 올려 때 제가 data 또는

답변

1

ASP.NET은 & 문자로 구분 될 수는 질의의 개별 파라미터를 기대에 Id 변경 되어도 {Id=} 저장 깨달았다. ?은 쿼리 문자열을 URL의 앞 부분과 분리하는 데에만 사용됩니다. How to pass multiple parameters in a querystring을 참조하십시오.

그래서 URL은 다음과 같아야합니다 여전히 작동하지

http://localhost:21614/AlbumManager.aspx?mp3=AudioHandler.ashx&ID=ACHI-0001 
+0

. 그것은 여전히 ​​빈 문자열을 전달합니다. [이 사이트] (https://www.aspsnippets.com/Articles/Save-MP3-Audio-Files-to-database-and-display-in-ASPNet-GridView-with-Play-and-Download)의 코드를 사용합니다. -option.aspx) 데이터베이스 ID 유형 (시작하는 문자열)과 일치하도록 조금 수정했으나 디버깅 할 때 ID를 얻지 못합니다. – MEGAtive

+0

질문을 좀 더 자세하게 업데이트 한 후에 제공된 URL에서 직접 ID 매개 변수를 읽지는 않았지만 먼저 mp3 매개 변수 (* AudioHandler.ashx? ID = ACHI-0001 *) 그리고 * AudioHandler.ashx *에서 ID를 읽습니다. 이 가정이 맞습니까? 이 경우'ID' 바로 직전에'?'를 사용하면 ('ID' 매개 변수의 시작을 나타내지 않고'mp3' param의 연속입니다.) 제 대답이 잘못되었습니다. 'context.Request.Url.AbsoluteUri'의 내용을 제공 할 수 있습니까? 문제는 매개 변수를 읽는 것이 아니라 코드에서 제공하지 않은 것 같습니다. –

+0

그래, .ashx를 mp3 용 컨테이너로 사용하려고합니다. 그리고 AbsoluteURI의 내용은'http : // localhost : 21614/AudioHandler.ashx? Id ='입니다. – MEGAtive