您好我在使用@model IList<TrackerModel>
IList<TrackerModel>
正从控制器中的操作方法传递给视图。
顾名思义,它是TrackerModels
的列表。
我想将此列表传递给我视图底部的javascript块。
通过foreach循环运行列表,以便每个模型都使用某个函数。 例如
foreach(var mod in IList<TrackerModel>)
{
LoadAttachments();
}
(我知道以上是错的,但你明白了) 可以这样做吗?
@foreach(var mod in Model)
{
LoadAttachments(@Newtonsoft.Json.JsonConvert.SerializeObject(mod));
}
尝试了上述建议,并得到以下错误。 @foreach =条件编译已关闭?
var =预期表达式?
in = expected; ?
LoadAttachments =当前上下文中不存在名称“LoadAttachments”?
@Newtonsoft =条件编译已关闭?
答案 0 :(得分:1)
如果你想采用这种方法(而不是将你的javascript调用回专用的web服务),你需要将你的模型渲染成你的javascript可以使用的东西,比如json数组。
例如在您的视图中
<script>
@foreach(var mod in Model)
{
@:javascriptFunc(@Newtonsoft.Json.JsonConvert.SerializeObject(mod));
}
</script>
这会针对javascriptFunc
中的每个项目致电IList<TrackerModel>
。每个TrackerModel
都是使用Newtonsfot.Json序列化的,它应该由Mvc自动包含,但是如果它不在Mvc 3中,你可以通过nuget添加它:https://www.nuget.org/packages/Newtonsoft.Json