У меня есть контроллер WebAPI в моем решении MVC5. В WebAPI есть метод, который возвращает все файлы в определенной папке в виде списка Json:
[{"name":"file1.zip", "path":"c:\\"}, {...}]
Из моего HomeController я хочу вызвать этот метод, преобразовать ответ Json в List<QDocument>
и вернуть этот список в представление Razor. Этот список может быть пустым: []
, если в папке нет файлов.
Это APIController:
public class DocumentsController : ApiController
{
#region Methods
/// <summary>
/// Get all files in the repository as Json.
/// </summary>
/// <returns>Json representation of QDocumentRecord.</returns>
public HttpResponseMessage GetAllRecords()
{
// All code to find the files are here and is working perfectly...
return new HttpResponseMessage()
{
Content = new StringContent(JsonConvert.SerializeObject(listOfFiles), Encoding.UTF8, "application/json")
};
}
}
Вот мой HomeController:
public class HomeController : Controller
{
public Index()
{
// I want to call APi GetAllFiles and put the result to variable:
var files = JsonConvert.DeserializeObject<List<QDocumentRecord>>(API return Json);
}
}
Наконец, это модель, если она вам нужна:
public class QDocumentRecord
{
public string id {get; set;}
public string path {get; set;}
.....
}
Итак, как я могу выполнить этот вызов?