0

我正在构建一个简单的网络应用程序。场景如下。

  1. 图片上传
  2. 选择一张或多张图片创建新对象(之前上传)
  3. 显示具有相应图像的对象

我在想创造这样的东西

SampleObject.cs
    Guid Id {get; set;}
    string Name {get; set;}

Image.cs
Guid Id {get; set;}
string Name {get; set;}
string ImagePath {get; set;}
SampleObject SampleObject {get; set;}

但另一方面,我只需要带有许多 ImagePath 字符串的 SampleObjects。所以更好的方法是将其简化为只有具有许多字符串的 SampleObjects (ImagePath)。

所以,第二种情况如下

  1. 上传图片
  2. 创建对象并使用 jquery onclick 选择一个或多个图像(读取 img src 元素)并将这些字符串存储在 SampleObject 字符串列表中。

第二种情况对您来说似乎更好,如果确实如此,您将如何创建这些实体(sampleobject.cs 和 image.cs)。

4

1 回答 1

2

我会这样处理这个问题:

为您可能拥有的任何图像创建一个简单的模型。

public class UploadedImageModel
{
    public string ImagePathUrl { get; set; }
    public string AlternateText { get; set; }
}

创建一个简单的 ViewModel,其中包含您可能想要显示的图像集合。

public class ImageGalleryViewModel
{
    public List<UploadedImageModel> Images { get; set; }
}

然后在您的视图中:

@model MyApp.WebUI.Models.ImageGalleryViewModel

@foreach(var pic in Model.Images) {

    <img src="pic.ImagePathUrl" alt="pic.AlternateText" /> 

}
于 2012-07-25T20:24:19.720 回答