【发布时间】:2012-03-31 00:41:27
【问题描述】:
我正在用 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# Dictionary 代替它,但这不适用于 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 });
谁能给点建议???
【问题讨论】:
-
您是否真的尝试使用字典编写任何 C# 代码以发现它们不适用于 Web 服务?
-
显然不允许我发布 lmgtfy 链接?无论如何,在 Google 或您最喜欢的搜索引擎上快速搜索关键字“C#”“webservice”“dictionary”“serializable”
-
@swasheck - 不会。这是告诉人们他们应该先搜索的粗鲁方式。
-
@swasheck 这是 Google 搜索“C# 关联数组”的首批结果之一。让我听你说递归!
标签: c# php web-services associative-array