c# – 无法在Razor foreach循环中使用Viewbag列表项
发布时间:2020-12-15 23:43:47 所属栏目:百科 来源:网络整理
导读:我有一个链接到Item表的 Images表(一个Item可以有很多Images).它们由Item Id链接. 我想在详细信息页面上返回项目的所有图像.我一直在尝试使用Viewbag来实现这个目标(下面). 控制器: ViewBag.imageFile = (from f in storeDB.Images where f.ItemId == id se
我有一个链接到Item表的
Images表(一个Item可以有很多Images).它们由Item Id链接.
我想在详细信息页面上返回项目的所有图像.我一直在尝试使用Viewbag来实现这个目标(下面). 控制器: ViewBag.imageFile = (from f in storeDB.Images where f.ItemId == id select f.ImageURL).ToList(); 视图: @foreach (var image in ((List<string>)ViewBag.imageFile)) { @ViewBag.imageFile } 以上将为每个ImageUrl返回’System.Collections.Generic.List`1 [System.String]’. 我也有以下Viewbag(测试看我能够至少获得Urls): ViewBag.imageURL = string.Join(",",ViewBag.imageFile); 以上内容返回正确的URL,但它们都在一个以逗号分隔的字符串中. 感谢任何帮助. 解决方法
在视图的循环内部,您应该使用循环变量:
@foreach (var image in ((List<string>)ViewBag.imageFile)) { @image } ViewBag.imageFile是完整的列表,即使在循环内部也是如此.图像循环变量将是循环每个回合中列表中的当前项. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |