2009-08-19 7 views
0

Ich verwende VS 2005 (C#). My Webservice gibt einen Typ wie folgt:Zugriff auf den ASMX Web Service Client Proxy-Typ?

[WebMethod] 
public Employee getEmployee() 
{ 
    Employee emp=new Employee(); 
    emp.EmpID=1000; 
    emp.EmpName="Wallace";  

    return emp; 
} 

von Client-Seite ich einen Proxy erstellt haben.

localhost.Service1 svc = new WindowsApplication1.localhost.Service1(); 

Wie bekomme ich das Employee-Objekt von getEmployee() -Methode zurückgegeben.

Muss ich eine Employee-Klasse auf der Clientseite erstellen?

.... wie ...

localhost.Service1 svc = new WindowsApplication1.localhost.Service1(); 
Employee emp = new Employee(); 
object obj= svc.getEmployee(); 
emp = (Employee)obj; 
MessageBox.Show("Id=:" + emp.EmpID.ToString() + "," + "Name:=" + emp.EmpName); 

Durch so auch tun i Casting Fehler erhalten.

Antwort

0

Alles, was Sie benötigen, ist dieses:

using (localhost.Service1 svc = new WindowsApplication1.localhost.Service1()) 
{ 
    localhost.Employee emp = svc.getEmployee(); 
    MessageBox.Show("Id=:" + emp.EmpID.ToString() + "," + "Name:=" + emp.EmpName); 
} 
+0

Yes.It YEILD das Ergebnis, was ich erwartet.Ich bin ein Anfänger, so dass ich noch viel zu lernen. – user158977

0

Warum Sie das Employee-Objekt werden immer in einem Objekt, man kann es wie folgt erhalten:

Localhost.Service1 svc = new WindowsApplication1.localhost.Service1(); 
**Employee employee= svc.getEmployee();** 
MessageBox.Show("Id=:" + employee.EmpID.ToString() + "," + "Name:=" + employee.EmpName); 
+0

Warum Sie erstellen 'emp'? –

+0

ich stimme zu, emp ist überhaupt nicht nötig, sorry, ich habe seinen code kopiert. – Bhaskar