Показать все изображения в представлении «детали» в ASP.NET MVC? - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь показать все свои изображения в моей БД, но по какой-то причине я не понимаю, что не могу ... если кто-то может мне помочь, я был бы признателен ... Я новичок в ASP.NET MVC, я знаю несколько вещей, но это все

My View Detail

<div class="row">
    <div class="col-md-3">
        <img src="@Url.Action("PaginasComics", "Comics", new {IdC = Model.Pages})" />
    </div>
</div>

Мой взгляд - это не IEnumerable<> вид, я думал всоздать частичное представление и вставить в эту часть, но я не знаю, будет ли работать, и я не знаю, как ...

Контроллер

    public ActionResult PaginasComics(string IdPagina)
    {
        var PaginasC = db.Paginas.Where(x => x.IdPaginaC.ToString() == IdPagina).FirstOrDefault();
        return File(PaginasC.Paginas, "imagen/jpeg", string.Format("{0}.jpg", IdPagina));

    }

Вот как япокажи изображения, но не работает ... У меня тот же код "PORTADA" в модельных комиксах, и это работает ... Я не очень хорошо работаю с массивами, может быть, это то, что мне нужно.

Модели

public class Comics
{
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    [Key]
    public int IdComics { get; set; }
    public string Titulo { get; set; } //title
    public byte[] Portada { get; set; } //cover
    public DateTime FechadeEstreno { get; set; } //date release

    public ICollection<PaginasComics> Pages { get; set; }


}

public class PaginasComics
{

    public int IdPaginaC { get; set; }
    public byte[] Paginas {get; set;}
    public int Id_Comic { get; set; } //foreig key of comics

   // here i save all the images
}

Ответы [ 2 ]

0 голосов
/ 30 января 2019

Проблема была в том, что вы не правильно использовали qoutes в URL. Действие. И имя параметра второго метода действия должно совпадать с параметром, который вы определили в url.action.
My View Detail

Для получения нескольких изображений из метода Action и отображения в представлении измените его следующим образом:

@{
   foreach(var pageId in Model.Pages){
   <div class="row">
        <div class="col-md-3">
            <img src="@Url.Action('PaginasComics', 'Comics', new {IdPagina = pageId })" />
        </div>
    </div>
   }

 } 

Для получения одного изображения из метода Action и отображения в представлении измените его следующим образом:

@{
   <div class="row">
        <div class="col-md-3">
            <img src="@Url.Action('PaginasComics', 'Comics', new {IdPagina = Model.Pages })" />
        </div>
    </div>
   }
0 голосов
/ 26 января 2019

ваше действие URL, вы передаете IdC в качестве параметров, но ваши контроллеры запрашивают параметр IdPagina.попробуйте изменить подпись URL-адреса в соответствии с запросом контроллера

<img src="@Url.Action("PaginasComics", "Comics", new {IdPagina = Model.Pages})" />
...