[英]ASP.NET MVC Create list in Helper Controller from Web API Call
我正在嘗試創建一個 Helper Controller,它本質上將向 Web API 發出 GET 請求,以創建一個最終將用於返回 JSON 數據的列表。 我在網上找到了一個示例,它幾乎可以滿足我的要求,只是數據是在控制器中硬編碼的。
控制器(在 C# 中):
public class StudentAPIController : Controller
{
// GET: api/GetAllStudents
[HttpGet]
public IEnumerable<PersonalDetail> GetAllStudents()
{
List<PersonalDetail> students = new List<PersonalDetail>
{
string uri = "URL_OF_API_CALL";
new PersonalDetail{
// Here is where I want to make the API call to fetch the data instead of this hard-coded data
RegNo = "2017-0001",
Name = "Nishan",
Address = "Kathmandu",
PhoneNo = "9849845061",
AdmissionDate = DateTime.Now
},
new PersonalDetail{
RegNo = "2017-0002",
Name = "Namrata Rai",
Address = "Bhaktapur",
PhoneNo = "9849845062",
AdmissionDate = DateTime.Now
},
};
return students;
}
}
任何幫助是極大的贊賞!
首先添加這個庫:
System.Net.Http
然后你可以使用這行代碼在你的輔助控制器中調用另一個 web api:
HttpClient client = new HttpClient();
client.BaseAddress = @"http://[YourBaseUri]/";
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var request = client.GetAsync("[YourActionName]");
return request.Result.Content.ReadAsStringAsync().Result;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.