0

この質問でごめんなさい。たくさんの情報がありますが、残念ながら答えが見つかりませんでした。手伝っていただけませんか?私はメインビューを持っています

詳細ビュー:

@model Shops.ShopModel
......
@Html.Partial("_PictureViewer", Model.Picures)
......

そしてメインビューにはPartialViewが含まれます

_PictureViewerビュー:

@model List<Model.PictureOriginalModel>
.....
@foreach (var p in Model)
{ 
  <img src='@new File(@p.Trunk, "image/jpeg");' alt='' />
}
.....

PictureOriginalModel.cs:名前空間モデル{

  public class PictureOriginalModel
 {
    [DataType(DataType.Text)]
    [Display(Name = "File Name.")]
    public string FileName { get; set; }

    [Display(Name = "Trunk.")]
    public Image Trunk { get; set; }

    [DataType(DataType.Text)]
    [Display(Name = "Description.")]
    public string Description { get; set; }
  }
}

その結果、エラーが発生しました。エラーCS1031:予期されるタイプ画像を正しく表示する方法を明確にしてください。

4

4 に答える 4

1

あなたは次のようにすることができます、

public FileContentResult GetImage(...) 
{
  //do somethings
   return File(image, mimeType);
}

<img src="<%= Url.Action("GetImage", "PictureOriginalModel", new { Id = someId}) %>" />
于 2012-06-26T09:54:01.420 に答える
1

画像タイプの応答を返すためのアクションを作成する必要があります

コントローラコード

public class HomeController
{
    public ActionResult Image( int id )
    {
        var imageData = getImagebyte(); // your function to return image byte

        return File(imageData, "image/jpg");
    }
}

このアクションのビューコールで

<img src='@Url.Action("Image","Home", new { id = 1 })' />
于 2012-06-26T09:58:50.207 に答える
0

次のような画像を返すコントローラーアクションを作成する必要があります。

[HttpGet]
public ActionResult GetImage(long id, ...) 
{
  ...
   return File(fileBytes, "image/png");
}

そして、クライアントコードで、コントローラーのGetImageメソッドへの正しいリンクを設定するだけです。

于 2012-06-26T09:51:46.763 に答える
0
[HttpGet]
public FileResult GetImage(int evaluatorId, int employeeId)
{
    byte[] imgByteArr = this._employeeManager.GetEmployeePhoto(employeeId);
    return imgByteArr != null ? File(imgByteArr, "image/png") : null;
}
于 2012-06-26T09:56:33.073 に答える