2013-09-05 3 views
0
내가 비주얼 스튜디오 명령 PROMT 등을 사용하여 WSDL을 통해 생성 된

안녕하세요 내가 가지고 WebService에이 결과를 호출 할 수이 명령액세스 결과

string[] ahoj = new string[] { 28156609.ToString() }; 

Rozhranice.StatusType[] ahoj2; 

Rozhranice.InformaceOPlatciType[] ahoj3; 

Rozhranice.rozhraniCRPDPH srv = new Rozhranice.rozhraniCRPDPH(); 

StreamWriter writer = new StreamWriter(@"C:\Users\marek\Desktop\spol.txt"); 

string abc = (srv.getStatusNespolehlivyPlatce(ahoj, out ahoj3).bezVypisuUctu.ToString()); 

textBox1.Text = abc; 

난`를 통해 : enter image description here

그러나 어떻게 결과를 얻을 수 있습니까? enter image description here

나는이 시도 :

string abc = (srv.getSeznamNespolehlivyPlatce(ahoj, out ahoj3).ToString()); 

하지만 이후 ...

, 밖으로 ahoj3). informaceOPlatciType에서 값을 선택하는 옵션이 아닙니다.

어디에 실수를해야합니까?

srv를 쓸 때. (옵션은 getStatusNespolehlivyPlace 및 getSeznamNespolehlivyPlace 임)

웹 서비스 URL을 제공해야하는 경우 알려주세요.

이 질문은 다음과 중복되지 않습니다 : Create SOAP envelope of XML and send it as HttpWebRequest to WebService - 이것은 작성 중이지만 지금은 WSDL 명령 프롬프트에서 생성 된 코드의 정확한 리후 루스를 호출하려고합니다. 다시 열 수 있습니까?

언급 된 기사에서 WSDL 명령 프롬프트 (이전 질문에서 묻는 다른 방법입니다)로 생성 된 조용한 작동 코드가 SOAP을 통해 보내려고했는데 그 결과를 얻는 데 막혔습니다. 제 의견으로는 그것은 매우 다른 질문입니다.

답변

1

ahoj3Rozhranice.InformaceOPlatciType의 배열입니다. 배열의 각 요소에 액세스하여 내용을 가져와야합니다.

string[] ahoj = new string[] { "28156609" }; 
Rozhranice.InformaceOPlatciType[] ahoj3; 
Rozhranice.rozhraniCRPDPH srv = new Rozhranice.rozhraniCRPDPH(); 
StatusType status = srv.getStatusNespolehlivyPlatce(ahoj, out ahoj3); 
string abc = status.bezVypisuUctu.ToString(); // If it is already a string, then ToString not needed 
for (int i=0; i<ahoj3.Length; i++) 
{ 
    Rozhranice.InformaceOPlatciType info = ahoj3[i]; 
    // Do something with info.cisloFu; 
    // Do something with info.dic; 
    // etc. 
} 
+0

정말 고마워요, 제게 많은 도움이되었습니다. 한 가지 더 질문 해 주시겠습니까? 나는'info.ZverejnenyUcetType'을 다음과 같이 얻으려고했다.'Rozhranice.ZverejnenyUcetType [] ucet; ucet = info.zverejneneUcty; textBox1.Text = ucet.ToString();'이 에러가 발생했습니다 :'Rozhranice.ZverejnenyUcetType []을 문자열로 암묵적으로 변환 할 수 없습니다. ' 나는'ZverejnenyUcetType'이'array'에 있기 때문에 그것이라고 믿습니다. 이 배열을 변환하는 데 도움을 청할 수 있습니까? 다시 한번 고마워. – Marek

+0

전환이 아닙니다. 배열 인 경우 색인을 생성해야합니다. 배열에는 Length 속성이 있으며 각 배열에 대해 하나의 배열 항목이 있습니다. Length가 2이면'[0]'과'[1]'이 있습니다. C#의 몇 가지 기본 사항을 배우십시오. –

1

뭔가하지 않으면 설정해야합니다

srv.getSeznamNespolehlivyPlatce(ahoj, out ahoj3) 

ahoj3 변수를 호출 한 후 방법에 문제가 있습니다. 당신은 평소와 같이 나중에 코드에서 해당 속성에 액세스 할 수 있습니다

ahoj3.SomeProperty.