2
クライアントアプリケーションがWeb APIコントローラにアクセスしてデータセットを取得すると、コントローラはパラメータとしてリストを持ちます。クライアントからWeb APIへの文字列のリストを渡す
static void Main(string[] args)
{
Program p = new Program();
p.getdata().Wait();
}
public async Task getdata()
{
List<string> datelist = new List<string>();
datelist.Add("12/05/2017");
datelist.Add("14/05/2017");
datelist.Add("18/05/2017");
HttpClient host = new HttpClient();
host.BaseAddress = new Uri("http://localhost/widgetApi/");
host.DefaultRequestHeaders.Clear();
host.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
StringContent content = new StringContent(JsonConvert.SerializeObject(datelist), Encoding.UTF8, "application/json");
HttpResponseMessage response = await host.GetAsync("api/dataAccessApi?"+ datelist);
response.EnsureSuccessStatusCode();
if(response.IsSuccessStatusCode)
{
Console.Read();
}
}
コントローラは
public HttpResponseMessage Get([FromBody] List<string> dates)
{
..... function going here
}
である私の質問は、私は、Web APIにdatelistを渡すことができる方法です??
GET要求はありません。このように見て、あなたは、クエリ文字列を構築し、
UrlEncode
でウリにそれを追加する必要がありますBODYでは、クエリ文字列値を使用できます。 '?'日付= '{UrlEncoded date}'&dates = '{UrlEncoded date}' ... ... – Nkosi