MVC的新手,在MVC应用程序上工作,用户根据日期和位置在主页上进行搜索,然后服务返回我填写到通用列表中的所需产品记录,然后在另一个视图上显示这些记录,现在我想做的是用户可以选择一个产品并做产品请求。
public ActionResult Index()
{
DateTime dt = System.DateTime.Now.AddDays(7);
var m = (from i in Enumerable.Range(0, 12)
let now = DateTime.Now.AddMonths(i)
select now.Month + " " + now.ToString("MMMM") + " " + now.Year.ToString()).ToList();
ViewBag.day = dt.Day;
ViewBag.b = m;
return View();
}
[HttpPost]
public ActionResult Index(DateTime PickUpDate, string location)
{
//fill data from service
TempData["CollectionTemp"] = CollectionList;
return RedirectToAction("Result");
}
public ActionResult Result()
{
List<myCollection> CollectionResult = new List<myCollection>();
CollectionResult = TempData["CollectionTemp"] as List<myCollection>;
return View(CollectionResult);
}
public class myCollection
{
public Datetime date { get; set; }
public string location { get; set; }
}
在结果视图中,我使用剃须刀显示记录
@if (Model != null)
{
foreach (var prd in Model)
{
fill the table with data
}
}
现在我要做的是为每个重定向到新视图的产品创建一个链接,显示该特定产品的所有详细信息。怎么样 ?欢迎链接
答案 0 :(得分:2)
这是很常见的事情 - 那里有很多教程 - 这个很全面:http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/getting-started-with-mvc3-part1-cs(第5部分是这个特定的位置:http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/getting-started-with-mvc3-part5-cs)
本质上,您可以创建一个actionlink,将您正在编辑的项目的ID传递回控制器上的操作方法,然后获取该项目的所有详细信息并返回视图以进行编辑。 / p>
答案 1 :(得分:1)
当您显示记录时,请为每个产品创建一个链接,例如
的foreach()
{
@ html.Actionlink('a','actionName','controller',new {id = paramter})
}
当在页面上进行渲染时,这将显示所有产品信息为超链接。
如果您需要任何帮助,请告诉我