我正在用php定制购物车应用程序。在此应用程序中,我必须将某些部分与另一个C#.net应用程序集成,因此我在php购物车中使用了Web服务。在Web服务的一种方法中,某些值应作为关联数组传递,如下所示:
$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));
在PHP中工作正常...
但是问题是我在C#.net上苦苦挣扎,如何通过C#.net传递关联数组?
我是一名PHP程序员,我认为C#.net中没有关联数组,有人说可以使用C#字典代替它,但这不适用于webservice调用。
C#代码是:
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 });
有人可以给些建议吗???
最佳答案
我认为您想要一个Dictionary<string, int>
。但是我可能是错的。调用Web服务时,您应该看到使用了什么生成的类。
要调用Web服务,请右键单击项目的References文件夹。说“添加服务引用”。
将WSDL URL放在那里,并让它为您生成类。