2016-08-01 8 views
0

Я новичок в MVC, и я хотел бы задать относительно простой вопрос! У меня есть страница индекса с двумя картинками, которые являются ссылками. Они оба идут на другую страницу с именем «Страница», и когда эта страница открывается, я хочу, чтобы она отображала изображение, на которое я только что нажал. Вот загвоздка со страницы индекса:Динамически показать кликнированное изображение MVC

<div class="col-md-4"> 
<h2>Column 1</h2> 
    <a href="@Url.Action("NewPage", "Page")"> 
     <img src="~/Images/ball.jpg" /> 
    </a> 
</div> 
<div class="col-md-4"> 
    <h2>Column 2</h2> 
    <a href="@Url.Action("NewPage", "Page")"> 
     <img src="~/Images/ball1.jpg" /> 
    </a> 
</div>` 

Так что, если я нажимаю на «ball.jpg», я хотел бы только, что, чтобы сделать в новой странице, и то же самое для «ball1.jpg». Контроллер для «NEWPAGE»:

namespace MVC.Mine.Controllers 
{ 
    public class PageController : Controller 
    { 
     // GET: Page 
     public ActionResult NewPage() 
     { 
      return View(); 
     } 
    } 
} 
+1

Необходимо передать параметр методу, который идентифицирует изображение –

ответ

0

Вы можете обновить значение атрибута href вашей ссылке, чтобы передать уникальный ключ в качестве значения параметра строки запроса.

Например, с вашим текущим кодом имя файла изображения может быть передано.

<a href="@Url.Action("NewPage", "Page",new {id="ball"})"> 
    <img src="~/Images/ball.jpg" /> 
</a> 
<a href="@Url.Action("NewPage", "Page",new {id="ball1"})"> 
    <img src="~/Images/ball1.jpg" /> 
</a> 

Теперь убедитесь, что ваш метод действия NewPage принимает эту строку значение в качестве параметра имени идентификатора

public ActionResult NewPage(string id) 
{ 
    var fileName=id+".jpg"; 
    return View(fileName); 
} 

Поскольку вы передаете значение строки (имя файла) к виду, убедитесь, что она сильно введенный в строковый тип.

@model string 
<h2>Going to display the image clicked</h2> 
<img src="~/Images/@Model" /> 

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

+0

Спасибо, что выписали его. Я следую первым двум частям, но третью часть я не полностью следую. – RJohnson

+0

Вы сказали, что хотите показать щелкнув изображение на следующей странице. Поэтому передайте имя изображения из вашего метода действий в представление и в представлении используйте это для создания значения свойства 'src' изображения. Надеюсь, что имеет смысл – Shyju