HTMLHelper中的数据库操作,还可以吗?

时间:2012-07-10 17:51:23

标签: database asp.net-mvc partial-views html-helper

您好,

我有一个ASP.NET MVC 3网站,我需要构建一个带有ID列表的图像墙,然后根据此列表构建imageWall。

imagewall将是partialView。

首先想到的是在当前的ViewClass上放置一个列表,其中包含将要显示的图像的ID,但我不确定这是一个很好的解决方案,尤其是如果这个图像墙被移动到另一个parentView的话。

所以问题是。我可以在HTML帮助程序中进行数据库操作吗?什么是最佳做法?

这个局部视图可能会被追上。

1 个答案:

答案 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控制器。