你好,
我有一个 ASP.NET MVC 3 网站,我需要构建一个带有 ID 列表的图像墙,然后基于此列表构建图像墙。
图像墙将是一个部分视图。
首先想到的是在当前 ViewClass 上放置一个列表,其中包含将显示的图像的 ID,但我不确定这是一个好的解决方案,尤其是如果这个图像墙被移动到另一个 parentView 时。
所以问题是。我可以从 HTML 帮助程序中进行数据库操作吗?什么是最佳实践?
这种局部观点可能会受到追捧。
你好,
我有一个 ASP.NET MVC 3 网站,我需要构建一个带有 ID 列表的图像墙,然后基于此列表构建图像墙。
图像墙将是一个部分视图。
首先想到的是在当前 ViewClass 上放置一个列表,其中包含将显示的图像的 ID,但我不确定这是一个好的解决方案,尤其是如果这个图像墙被移动到另一个 parentView 时。
所以问题是。我可以从 HTML 帮助程序中进行数据库操作吗?什么是最佳实践?
这种局部观点可能会受到追捧。
为什么你会首先这样做?
我认为您应该从控制器操作中返回一个列表,然后在您的视图中对其进行迭代,例如:
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 控制器。