Asp.net mvc 我可以将JSON而不是模型从控制器传递到Razor视图吗
我的视图继承了以下内容:-Asp.net mvc 我可以将JSON而不是模型从控制器传递到Razor视图吗,asp.net-mvc,asp.net-mvc-3,razor,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 3,Razor,Asp.net Mvc 4,我的视图继承了以下内容:- @model MvcApplication.Models.Application 但我需要知道,是否可以像传递模型对象一样,将JSON对象传递给视图? 因为我有以下控制器:- public ActionResult ListPackages() { using (var client = new WebClient()) { var query = HttpUtility.ParseQueryString(string.Empty);
@model MvcApplication.Models.Application
但我需要知道,是否可以像传递模型对象一样,将JSON对象传递给视图?
因为我有以下控制器:-
public ActionResult ListPackages()
{
using (var client = new WebClient())
{
var query = HttpUtility.ParseQueryString(string.Empty);
//code goes here ....
return Content(json, "application/json");
}
}
它使用API调用返回JSON,然后我使用JavaScript在视图上显示JSON,如下所示:
$.ajax({
url: $('#geturl').data('url'),
type: 'GET',
cache: false,
success: function (result) {
$.each(result.data, function (key, val) {
var str = val.packageName;
$('<li/>', { text: str })
.appendTo($('#products'));
});
}
$.ajax({
url:$('#geturl')。数据('url'),
键入:“GET”,
cache:false,
成功:功能(结果){
$.each(result.data,function(key,val){
var str=val.packageName;
$('',{text:str})
。附件($(“#产品”);
});
}
使用JavaScript显示JSON的问题是,它会使我很难轻松处理JSON对象,例如基于返回的JSON创建链接或创建包含JSON的表。因此,我的问题是:是否可以将JSON对象而不是模型对象从我的控制器传递到我的视图?r-vs客户端混淆
你在这里说的是两件事:
public ActionResult ListPackages()
{
using (var client = new WebClient())
{
var query = HttpUtility.ParseQueryString(string.Empty);
//code goes here ....
var model = new JavaScriptSerializer().Deserialize<MyViewModel>(json);
return View(model);
}
}