我想将字符串数组传递给我的控制器。 我从另一个c#代码传递数据。
这是我的要求:
String[] varList = new List<String> { "A", "B" }.ToArray();
using (var client = new HttpClient())
{
await client.GetAsync(GetHttpSchema() + HttpContext.Current.Request.Url.Host + "/AController/B?varA=" + varA + "&varB=" + varB + "&varList=" + varList);
}
这是我的控制器:
public partial class AController : BaseController
{
public async Task B(string A, string B, String[] varList) { }
}
现在在调试中我得到varList的以下值(只有一个值):System.String [] ..... 有什么建议吗?
答案 0 :(得分:1)
首先你可以像这样创建一个数组
string[] varList = new [] {"A", "B"}
其次,您希望获取数组的值,但数组的ToString
方法是默认值,它只是为您提供类型的名称。相反,您可以使用string.Join
string listOfValues = string.Join(",", varList);
这将为您提供逗号分隔的值列表。或者您可能需要执行以下操作以获得&#34;&amp; varList = A $ varList = B&#34;基于this。
string listOfValues = "$varList=" + string.Join("&varList=", varList);
就我个人而言,我不知道您在http请求中需要这些值的格式,因此我会将该部分留给您。