2012-07-05 1 views
0

이 문제가 발생합니다. 요청 양식을 webservice에 문자열로 전달한 다음 그 문자열 내부의 데이터를 가져 오려고합니다. 내가 각 하위 문자열을 검색 밖으로 일할 수있을 것 같아요하지만 Request.Form 방식으로 컬렉션을 다시 만드는 방법이 있는지 궁금해.C# Request.Form을 String으로 변환하고 Request.Form으로 돌아 가기

감사합니다.

당신은 단지 결과가 완전히이 방법이 될 것입니다 붙여 넣기하는 데 시간이 너무 오래 될 것입니다 있지만 문자열이

title_1=Mr&initials_1=James&surname_1=Smith&title_2=Mr&initials_2=Harry&surname_2=Smith&Address=TestAddress&City=Surrey& 

처럼 기본적으로 보이는 것

죄송 바로 davenewza,있어 ToString을 RequestForm으로 전달하고, 내가 얻고 자하는 것은 initials_1, surname_1, initials_2, Address .....의 실제 값입니다. 따라서 사전으로 다시 변환 할 수 있다면 가장 쉬운 방법이 될 것입니다. 그것? 하지만 가능하다면 모르는 이런

+1

을 입력해야합니다. 부디. 그것은 우리에게 문맥을 제공합니다. – davenewza

답변

0

뭔가가

string request = ... 
Dictionary<string,string> param = new Dictionary<string,string>(); 
request.Split('&') 
     .Select(o => o.Split('=')) 
     .ToList() 
     .ForEach(p => param.Add(p[0],p[1]) 
); 

을해야하지만 당신은 유일한 매개 변수는 한 번만 표시해야합니다. 그렇지 않으면 p => param [p [0]] = p [1]을 할 수 있습니다. 그러면 이전 버전을 대체 할 수 있습니다 ... 모두 유지하려면 사전>