2013-07-04 1 views
0

메신저는 웹 서비스에 대해 배우려고합니다. 인스턴트 메신저로 새로운 메신저 개체를 보내려고합니다. 개체의 이름은 동전입니다. 나는 내 사이트와 webservice와 함께 사이트에 클래스를 넣으려고했는데, 내가 뭘 해야하는지 알지는 못했지만 여전히 작동하도록 노력했고 여전히 작동하지 않았다.이 메시지는 항상 "apicity가 localhost 유형을 변환 할 수 없다. 코인에게. " 이 문제없이 객체를 보내려면 어떻게해야합니까? 메소드의 이름은 transferCoin이며 내가 많은 방법을 시도하는 문자열을 가져옵니다이 그 중 하나입니다implicity는 localhost.Coin을 Coin으로 변환 할 수 없습니다.

Coin c = new Coin(); 
WebService w = new WebService(); 
c=w.transferCoin(ListBox1.SelectedValue); 

무엇을 위해? 감사합니다.

답변

1

Coin()에 대한 두 가지 다른 정의가있는 것처럼 보입니다. 그것은 예외가 당신에게 말하는 것입니다. 여러분의 의견을 고려할 때 아마도 Coin() 객체를 두 번 추가했을 것입니다; 한 번은 클라이언트/웹 사이트에서, 한 번은 서비스에서? 귀하의 사이트에 정의 된대로 동전 객체를 사용하지 않는,

// [comment this] Coin c = new Coin(); 
WebService w = new WebService(); 
var c = w.transferCoin(ListBox1.SelectedValue); 

을 여기에 :

는 다음 작품을한다면, 시도,이 가정을 확인합니다. 그러나 서비스에 정의 된 객체가 많습니다.

+0

많은 변화가 있습니다. 두 사이트에서 동일한 개체를 사용하고 있습니다.주의하지 않으면 죄송합니다. 하지만 클래스에서 함수를 사용할 수없는 이유는 무엇입니까? 기음. 나는 거기에 내장 된 기능을 보여주지 않을 것이다. – user2205625

+0

웹 서비스는 요청 및 응답을 통신하는 데에만 사용할 수 있습니다. 유일한 값/속성. 함수와 같은 클래스의 구현을 "라인을 통해"보낼 수 없습니다. 서비스 패턴을 잘 구현한다면, 웹 서비스가 제공해야하는 Coin() 객체의 함수가 더 이상 필요하지 않습니다. 그러나이를 원할 수있는 합리적인 시나리오가 있습니다. 이 경우 가장 좋은 방법은 별도의 클래스 라이브러리를 새 프로젝트로 만들고 여기에 Coin() 클래스를 정의한 다음 웹 사이트와 서비스에서이 새 프로젝트를 참조하는 것입니다. –

관련 문제