动态显示点击图像MVC
问题描述:
我是新来的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”。 的“新页”的控制器:
namespace MVC.Mine.Controllers
{
public class PageController : Controller
{
// GET: Page
public ActionResult NewPage()
{
return View();
}
}
}
答
您可以更新链接的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>
现在确保你的新页的操作方法在名为ID的参数接受此字符串值
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" />
如果你是显示从数据库表(或多个)记录的图像,你应该通过唯一的ID(主键),从该图像信息可以在你的新页的操作方法很容易地检索。
您需要将参数传递给标识图像的方法 –