2016-08-17 7 views
0

вот мой код для отображения изображений на страницеКак передать любую гиперссылку или идентификатор div на другую страницу в MVC?

@foreach (var i in Model) 
{ 
    <li> 
     <a href="@i.Image" class="fancybox" data-fancybox-group="gallery" id="@i.Id"> 
      <img src="@i.Image" alt="" class="img-responsive"> 
     </a> 
    </li> 
} 

в этом коде я хочу, чтобы получить идентификатор щелкнули гиперссылке изображений на следующей странице я хочу, чтобы отобразить это изображение, и некоторые другие приписывали на основе идентификатора из базы данных

любые предложения, пожалуйста,

+0

Что такое подпись метода контроллера ваш перенаправляющего к? –

+0

подпись означает? – ab00764

+0

Как называется метод? Как называется контроллер? Каковы его параметры? –

ответ

0

Вы можете использовать метод Url.Action помощника для создания URL к другому методу действия и передать идентификатор изображения в качестве параметра строки запроса.

<a href="@Url.Action("Details","Image",new {imageId=i.Id})" 
         class="fancybox" data-fancybox-group="gallery" > 
     <img src="@i.Image" alt="" class="img-responsive" /> 
</a> 

Когда бритва выполняет вышеуказанный код, он будет генерировать разметку, подобную этой тегу.

<a href=/"Image/Details?imageId=123" 

Где 123 мог идентификатор изображения в вашей итерации цикла.

Если у вас есть метод с Details действий в вашем ImageController, который принимает идентификатор изображения в качестве параметра имени imageId

public ActionResult Details(int imageId) 
{ 
    // imageId param will have the id of the clicked image. 
    // you can get the details of the image using the id and return something to the view. 
    // To do : Return something 
} 
+0

, так что в основном в конце подробного метода он возвращается к просмотру страницы, на которой я хочу показать детали на основе id. здесь я снова использую @ Url.Action(), чтобы передать id на нужную страницу, и на этой странице я получу информацию методом GET, чтобы получить идентификатор от url? – ab00764

+0

Да. В запросе будет идентификатор изображения в параметре ImageId. В своем действии Details, прочитайте его и используя это, вы можете получить необходимую информацию из любой точки (из таблицы db может быть?) И вернуть что-то в представление. – Shyju

+0

Вам нужно добавить представление для метода действия. Создайте вид бритвы в каталоге '~/views/Image' с именем' Details.cshtml' Это базовый MVC. Я предлагаю вам ознакомиться с учебниками MVC, чтобы получить представление о соглашениях MVC. – Shyju