我正在尝试在ASP.NET MVC3应用程序中打开一个模式弹出窗口,并传递一些参数
弹出窗口包含在名为SearchArea.cshtml
的文件中定义的视图
所以,这就是我写的:
我的观点:
var coordinates = [];
//push some data in coordinates
//coordinates looks like : coordinates[0] = 45.25489, coordinates[1] = 5.14975, etc...
$("<div></div>")
.addClass("dialog")
.appendTo("body")
.dialog({
title: "TEST",
close: function () { $(this).remove(); },
modal: true,
height: 400,
width: 600,
left: 0
}).load('@Url.Action("Show", "SearchArea")', {'coordinates' : JSON.stringify(coordinates) });
我的控制器
public ActionResult Show(string coordinates)
{
List<Single> searchArea = JsonConvert.DeserializeObject<List<Single>>(coordinates);
return View(searchArea);
}
然而,这是我获得的:
当我逐步调试时,searchArea
具有良好的值,所以我认为序列化/反序列化是可以的。应该加载的视图也可以,我试图显示它并且没有错误发生。
答案 0 :(得分:0)
昨天终于找到了解决方案。
我将字符串化为coordinates.Join(',')
,而不是对数组进行字符串化。这有效,但这很难看。
所以我正在创建一个包含所有想要的字段的模型,然后将它传递给我的视图。它应该工作,我尝试与虚拟价值,它似乎工作