在查看了很多问题和 Internet 数据后,我解决了我的一个问题,即正确地从 MVC3 应用程序获取 URL 参数。问题是编码没有错误,但在路由方面(我对路由不太擅长......)。这是当前的问题。
http://localhost:51561/Report/Details/1
这是我的应用程序呈现报告详细信息的方式,这很好。但是当它这样做时,我无法从 URL 参数中获取值,就像这样
Request.QueryString["id"]
但是,当我手动输入 URL 时http://localhost:51561/Report/Details?id=1
,它可以工作......事情是我喜欢第一个 URL 类型,但我不知道如何从中获取参数......
请帮忙...
更新:
我的控制器操作:
public ViewResult Details(int id)
{
Report report = db.Reports.Find(id);
ViewBag.TestID = Request.QueryString["id"].ToString();
return View(report);
}
public ActionResult Show(int id)
{
Report report = db.Reports.Find(id);
var imageData = report.Image;
return (File(imageData, "image/jpg"));
}
我的观点:
<div class="display-label">Picture</div>
<div class="display-field">
<img alt="image" src="<%=Url.Action("Show", "Report", new { id = ViewBag.TestID })%>" width="200px" />
</div>