2012-03-14 20 views
6

Estoy personalizando una aplicación de carrito de compras en php. en esta aplicación, tengo que integrar una parte con otra aplicación C# .net, así que estoy usando webservice en php shoppnig cart. En uno de los métodos del servicio web, algunos valores deberían pasar como una matriz asociativa como esta.C# equivalente a la matriz asociativa php

$proxy = new SoapClient('www.mywebservice.com?wsdl'); 
    $associative_array= array(
    'abc'=> 1,'def'=>0,'ghi'=>1,'jkl'=>0 
    ); 

    $proxy->call($sessionId, 'methodname', array('somevalue', $associative_array)); 

en php su funcionamiento muy bien ... pero el problema es que estoy luchando con C# .NET, ¿Cómo puedo pasar matriz asociativa con C# .NET? Soy un programador php Creo que no hay arreglo asociativo en C# .NET y alguien dice que C# diccionario puede utilizar en lugar de eso, Pero eso no es trabajar con la llamada de servicio web

código C# es

Dictionary<string,string> map=new Dictionary<string,string>(); 
       map.Add("abc","1"); 
       map.Add("def","0"); 

       object st = mgs.call(sessionid, "methodname", new object[] { "somevalue",map }); 

¿alguien puede dar un consejo?

+4

¿Ha intentado realmente escribir ningún código C# utilizando diccionarios con el fin de descubrir que no funcionan con el servicio web? – BoltClock

+0

sí, lo he intentado, –

+5

Entonces, ¿dónde está ese código? – BoltClock

Respuesta

2

Creo que quieres un Dictionary<string, int>. Pero podría estar equivocado. Debería ver qué clase generada se usa cuando llama al servicio web.

Para llamar al servicio web, haga clic con el botón derecho en la carpeta Referencias de su proyecto. Diga Agregar referencia de servicio.

Ponga la url WSDL allí y deje que genere las clases por usted.

+0

Ahora quiere pasar ese diccionario a un servicio web. – swasheck

Cuestiones relacionadas