C# 将ID传递给URL,ASP.NET MVC
我正在尝试向URL传递id,但是我无法硬编码id,但我需要从模型传递id 它基本上是以表格形式显示的特定类型模型的集合。 当用户单击表的id值时,我需要能够将id传递给URL,以便它能够打开相应的详细页面C# 将ID传递给URL,ASP.NET MVC,c#,.net,asp.net-mvc,C#,.net,Asp.net Mvc,我正在尝试向URL传递id,但是我无法硬编码id,但我需要从模型传递id 它基本上是以表格形式显示的特定类型模型的集合。 当用户单击表的id值时,我需要能够将id传递给URL,以便它能够打开相应的详细页面 <a href="~/Instance/Details/id=@Url.Encode(modelitem => item.Id)"> @Html.DisplayFor(modelitem => item.Id)</a> 这就是我正在尝试的,需要帮助
<a href="~/Instance/Details/id=@Url.Encode(modelitem => item.Id)"> @Html.DisplayFor(modelitem => item.Id)</a>
这就是我正在尝试的,需要帮助:)。首先,使用
Url.Action
方法生成操作方法的正确相对Url
@foreach (var item in SomeCollection)
{
<div>
<a href="@Url.Action("Details","Instance",new { id = item.Id })">
@Html.DisplayFor(modelitem => item.Id)
</a>
</div>
}
首先,使用
Url.Action
方法生成操作方法的正确相对Url
@foreach (var item in SomeCollection)
{
<div>
<a href="@Url.Action("Details","Instance",new { id = item.Id })">
@Html.DisplayFor(modelitem => item.Id)
</a>
</div>
}
modelitem=>item.Id
这看起来是错误的。它不应该是modelitem=>modelitem.Id
?modelitem=>item.Id
这看起来不对。它不应该是modeleItem=>modeleItem.Id
?new{Id=item.Id}
可能应该是new{Id=Model.Id}
@lewsterin他在一个集合中做这件事。因此,它应该是循环当前正在执行的项,即item.Id
@Sam Axe我更新了您的编辑。因为它是一个循环,所以应该是modelitem=>item.Id
。如果使用modelitem=>modelitem.Id
,则它无效。你会从razor那里得到一个错误。哦,好吧,我错过了。谢谢更新您的答案。modelitem=>item.Id
对我来说仍然没有任何意义。输入变量modelitem
未在该lambda表达式中使用。它不应该仍然是modelitem=>modelitem.Id
?在计算lambda表达式时,item
不会被传递到modelitem
输入参数吗?new{id=item.id}
可能应该是new{id=Model.id}
@lewsterin,因为他正在集合中执行此操作。因此,它应该是循环当前正在执行的项,即item.Id
@Sam Axe我更新了您的编辑。因为它是一个循环,所以应该是modelitem=>item.Id
。如果使用modelitem=>modelitem.Id
,则它无效。你会从razor那里得到一个错误。哦,好吧,我错过了。谢谢更新您的答案。modelitem=>item.Id
对我来说仍然没有任何意义。输入变量modelitem
未在该lambda表达式中使用。它不应该仍然是modelitem=>modelitem.Id
?在计算lambda表达式时,item
不会被传递到modelitem
输入参数吗?