![](/img/trans.png)
[英]Pass model and modellist data together to a partial view - ASP.NET MVC 5
[英]ASP.NET MVC Pass Dynamic Json Data into Model to return in Partial View
我正在研究ASP.NET MVC项目,并且有一个控制器,可以从外部Web API获取JSON数据。 现在,我想反序列化此JSON数据并将其放入一个模型中,该模型最终将传递到Partial View中。
JSON数据:
{
"results":[
{
"name":"Company A",
"providerName":"Company Provider A"
...(More Data Below)
控制器:
[HttpGet]
[Route("company-info/companyinfogetapidata")]
[AllowAnonymous]
public ActionResult CompanyInfoGetApiData(string name, int CompanyCode, string city, string state, int zip)
{
/* Json Data is fetched properly */
var json = request.Result.Content.ReadAsStringAsync().Result;
JObject o = JObject.Parse(json);
JToken ApiData = o["results"];
// Now I want to pass the JSON data into my model
CompanyResultsModel getfetcheddata = new CompanyResultsModel();
// I tried using this method below but it's not working properly
getfetcheddata = Newtonsoft.Json.JsonConvert.DeserializeObject<CompanyResultsModel>(json);
// Pass the Model containing into the PartialView Result
return PartialView(@"~/Views/Shared/companies/_companyResults.cshtml", getfetcheddata);
}
模型:
public class CompanyResultsModel
{
public string companyName { get; set; }
public string companyProvider { get; set; }
}
视图:
@model Companies.CompanyResultsModel
<p>@Model.companyName</p>
<p>@Model.companyProvider</p>
将JSON数据传递到模型后,如果我在上面使用此方法在视图中显示数据,它将正确返回我的所有数据吗?
任何帮助是极大的赞赏!
您收到的json与您的CompanyResultsModel
不匹配。 它确实与包含名称为results
的属性的模型匹配,该属性是CompanyResultsModel
的集合。
创建以下模型
public class JsonResultModel
{
public IEnumerable<CompanyResultsModel> Results { get; set; }
}
并在控制器中
JsonResultModel model = JsonConvert.DeserializeObject<JsonResultModel>(json);
并且如果您只想将第一个CompanyResultsModel
返回到视图
return PartialView("_companyResults", model.Results.FirstOrDefault());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.