我將此控制器用于 .net 核心 string url = "Url Here"; private string customerApi; private object JsonRequestBehavior; [HttpGet] [Route("Getagent")] public async Task<ActionResult> Getagent(string search) { using (var client = new HttpClient()) { client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = await client.GetAsync(customerApi); if (response.IsSuccessStatusCode) { string jsondata = await response.Content.ReadAsStringAsync(); return Content(jsondata, "application/json"); } return Ok(); } }將值輸出為數組 >> 我如何通過 Api 控制器 Web Api 在此數組中進行搜索
1 回答

浮云間
TA貢獻1829條經驗 獲得超4個贊
如果 customerApi 上的服務不接受搜索字符串,而您想在本地進行搜索,則必須創建一個表示 json 數據的模型。例如,您從服務中獲取此 json:
{
"name": "John Smith",
"id": 1,
"age": 20,
"tags": [
"person", "male", "etc"
]
}
你必須像這樣創建一個對象模型:
public class ServiceResponseModel {
public string Name {get;set;}
public int Id {get;set;}
public int Age {get;set;}
public string[] Tags {get;set;}
}
然后您可以將 json 轉換為這些對象的數組:
string jsondata = await response.Content.ReadAsStringAsync();
var responseObject=Newtonsoft.Json.JsonConvert.DeserializeObject(jsondata);
如果你有對象,你可以在它的屬性中搜索:
var filteredResponseObject = responseObject.Where(x=>x.Name.Contains(search))
- 1 回答
- 0 關注
- 153 瀏覽
添加回答
舉報
0/150
提交
取消