0

こんにちは、私は nvarchar を使用しており、マップが ~/image/pics.jpg のような画像を表示するまで参照を試行しました。私の表では、ID、画像、テキストの 3 つの列を取得しました。id=整数、画像=nvarchar(最大) テキスト= nvarchar(50)。

どうすれば表示できますか? 私が従うことができるガイドやチュートリアルを知っている人はいますか?

私はどこでも検索していますが、バイナリと画像の典型を使用しています。必要に応じてテキストとIDのみを表示できますが、画像には画像である必要があるアイコンが表示されますが、表示されませんでしたか?

コントローラ

public ActionResult Index()
    {
    var pics = db.image.ToList();

    return View(pics);
    }

見る

@foreach (var item in Model)
<tr>
<img src='@item.image' />
<tr/>
<tr>
@item.text
<tr/>
4

1 に答える 1

0

ビューで使用するヘルパーメソッドを作成しました。

public static IHtmlString Image(this HtmlHelper htmlHelper, string url)
{
     return Image(htmlHelper, url, null);
}

public static IHtmlString Image(this HtmlHelper htmlHelper, string url, object htmlAttributes)
{
     TagBuilder imgTag = new TagBuilder("img");
     UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);

     imgTag.MergeAttribute("src", urlHelper.Content(url));
     imgTag.MergeAttributes(new RouteValueDictionary(htmlAttributes));

     return new HtmlString(imgTag.ToString(TagRenderMode.SelfClosing));
}

私の見解では、私は次のことをしています:

@model MyProject.ViewModels.MyViewModel

@foreach (var file in Model.UploadedFiles)
{
     @Html.Image(file.Path)<br />
}

私のビューモデル:

public class MyViewModel
{
     public IList<UploadedFile> UploadedFiles { get; set; }
}

UploadedFileクラス:

public class UploadedFile
{
     public string Path { get; set; }
}

これで、UploadedFilesプロパティをどのように設定するかはあなた次第です。私はデータベース呼び出しでこのようなことをしたでしょう:

public ActionResult MyActionMethod()
{
     MyViewModel viewModel = new MyViewModel
     {
          // Database call to return paths
          UploadedFiles = fileService.GetFiles()
     };

     return View(viewModel);
}

これを行うにはおそらくより良い方法がありますが、これは方向性を示すのに役立ちます。お役に立てれば。

于 2012-04-08T19:18:59.247 に答える