带有其他参数的C#HttpClient Post String数组

时间:2015-04-22 08:13:15

标签: c# post httpclient paramarray

我正在编写一个C#api客户端,对于大多数发布请求,我使用FormUrlEncodedContent发布数据。

List<KeyValuePair<string, string>> keyValues = new List<KeyValuePair<string, string>>();

keyValues.Add(new KeyValuePair<string, string>("email", email));
keyValues.Add(new KeyValuePair<string, string>("password", password));

var content = new FormUrlEncodedContent(keyValues);

但是现在我需要将一个字符串数组作为一个参数发布。有些事情如下。

string[] arr2 = { "dir1", "dir2"};

如何使用c#HttpClient将此数组与其他字符串参数一起发送。

1 个答案:

答案 0 :(得分:12)

我遇到了同样的问题,我必须将一些常规的String参数和一个字符串数组添加到Http POST Request主体。

要做到这一点,你必须做类似于下面的例子(假设你要添加的数组是一个名为<script data-require="angular.js@~1.3.15" data-semver="1.3.15" src="https://code.angularjs.org/1.3.15/angular.js"></script> <body class="hold-transition skin-blue sidebar-mini" data-ng-app="testApp" > <form novalidate="novalidate" ng-submit="vm.onSubmit()" ng-controller="testCntler" > <table width="293" border="0"> <tr> <td width="127">First Name</td> <td width="150"> <input type="text" ng-model="fname" ></td> </tr> <tr> <td>Mid Name</td> <td> <input type="text" ng-model="mName" ></td> </tr> <tr> <td>Last Name</td> <td> <input type="text" ng-model="lName" ></td> </tr> <tr> <td colspan="2"> <button type="submit" ng-click="testcontroller()" >Static button</button> <tel-Savebutton check-Id="firstName" on-form-submit="testcontroller()"></tel-Savebutton></td></td> </tr> </table> </form> </body>的字符串数组):

dirArray