MVC 4ビジュアルスタジオでプロジェクトに取り組んでいます。私がやろうとしているのは、データベースからすべての画像を選択し、すべてをビューに表示することです。
私のデータベースには3つの列があります:id | ファイルタイトル | ファイルパス
画像はフォルダにあります。
ドロップダウンリストで動作させ、値を選択すると画像が表示されます。
しかし、私の質問ですが、すべての画像を同時にリストに表示するにはどうすればよいですか?
ここに私のコードがあります:
モデル:
public class Image
{
public SelectList ImageList { get; set; }
public Image()
{
ImageList = GetImages();
}
public SelectList GetImages()
{
var list = new List<SelectListItem>();
string connection = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
using (var con = new SqlConnection(connection))
{
con.Open();
using (var command = new SqlCommand("SELECT * FROM myimage", con))
{
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
string title = reader[1] as string;
string imagePath = reader[2] as string;
list.Add(new SelectListItem() { Text = title, Value = imagePath });
}
}
con.Close();
}
return new SelectList(list, "Value", "Text");
}
}
コントローラ:
public ViewResult ShowImages()
{
Image image = new Image();
return View(image);
}
VIEW (すべての画像を同時に表示しようとしています):
@foreach (var image in Model.ImageList)
{
<img src="@Url.Content(image)" alt="image" id="image" style="width:200px;height:200px;" />
}