您好,
我有一个ASP.NET MVC 3网站,我需要构建一个带有ID列表的图像墙,然后根据此列表构建imageWall。
imagewall将是partialView。
首先想到的是在当前的ViewClass上放置一个列表,其中包含将要显示的图像的ID,但我不确定这是一个很好的解决方案,尤其是如果这个图像墙被移动到另一个parentView的话。
所以问题是。我可以在HTML帮助程序中进行数据库操作吗?什么是最佳做法?
这个局部视图可能会被追上。
答案 0 :(得分:1)
你为什么要这样做?
我认为您应该从Controller操作返回一个List,然后在View中迭代它,如:
foreach(var image in @Model.Images)
{
// output some HTML code here using each image file path...
<img src="@image.Path" />
}
在这种情况下,您可以使用@Html.RenderAction。你这么称呼它:
@Html.RenderAction("GetImages", "ImageWall");
ImageWall的位置是您的新ImageWall Controller
,而GetImages是Action
的名称。
这将允许您在另一个Controller的视图中使用ImageWall控制器。