문제

WCF 기반 서비스에 양식 데이터를 수락해야합니다. 인터페이스는 다음과 같습니다.

[OperationContract]
[WebInvoke(UriTemplate = "lead/inff",
    BodyStyle = WebMessageBodyStyle.WrappedRequest)]
int Inff(Stream input); 

구현은 다음과 같습니다 (샘플 - 오류 처리 및 기타 보호 장치 없음) :

public int Inff(Stream input)
{

    StreamReader sr = new StreamReader(input);
    string s = sr.ReadToEnd();
    sr.Dispose();

    NameValueCollection qs = HttpUtility.ParseQueryString(s);
    Debug.WriteLine(qs["field1"]);
    Debug.WriteLine(qs["field2"]);

    return 0;
}

WCF를 가정하면 들어오는 스트림을 구문 분석하는 것 외에이를 달성하는 더 좋은 방법이 있습니까?

도움이 되었습니까?

해결책

DevLink에서 이것에 대해 이야기하는 것을 기억합니다.

양식 필드를 지원해야하기 때문에 (현재하고있는 일)를 얻는 역학은 변하지 않습니다.

도움이 될 수있는 것, 특히 양식 필드가 필요하지 않은 새로운 응용 프로그램에 대해 서비스를 재사용하려면 스트림을 해체하고 XML/JSON/SOAP/uthing으로 재 포장하고 양식 클라이언트를 갖는 채널을 작성하는 것입니다. 양식을 사용하지 않는 클라이언트는 다른 채널 스택을 사용할 수있는 동안 서비스와 통신하십시오. 그냥 아이디어 ...

도움이되기를 바랍니다. 채널에 대한 도움이 필요하면 언제든지 알려주십시오.

다른 팁

jQuery로 양식 필드를 직렬화하고 WCF 서비스에 대한 JSON 요청으로 패키지 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top