1

你好,

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

图像墙将是一个部分视图。

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

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

这种局部观点可能会受到追捧。

4

1 回答 1

1

为什么你会首先这样做?

我认为您应该从控制器操作中返回一个列表,然后在您的视图中对其进行迭代,例如:

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.

这将允许您在另一个控制器的视图中使用您的 ImageWall 控制器。

于 2012-07-10T18:00:13.407 回答