c# - 在剃刀视图中创建链接按钮,该按钮将激活将所选模型作为参数传递的控制器
问题描述
我有一个像下面这样的剃刀视图:
@model WebCoreFly.Models.ViewModels.SearchFlightInfoCollList
@foreach (var fcoll in Model)
{
<div class="row">
<div class="col-md-4">
<p>From @fcoll.depFlight.Location , @fcoll.depFlight.Country (@fcoll.depFlight.Airport) Leaves at: @fcoll.depFlight.Time</p>
<p>To @fcoll.depFlight.ArriveLoc , @fcoll.depFlight.ArriveCountry (@fcoll.depFlight.ArriveAirport) arrives at: @fcoll.depFlight.ArriveTime</p>
</div>
<div class="col-md-2">
<p>
Tarif: @fcoll.depFlight.Tarif
</p>
<a asp-action="BookingForm">Choose <a>
</div>
</div>
}
它基本上是一个输出我的数据集合的列表。现在对于每个项目,我需要一个链接或一个按钮来启动一个控制器(我称之为 BookingForm 并将用户选择的项目的数据传递给它。我怎样才能实现这一点?在 html 中我知道我会做什么我会创建一个链接并通过 get 传递一些信息,但是如何在 mvc 上下文中实现它?
解决方案
@Html.ActionLink("Your link text", "ActionName", "ControllerName", fcoll)
您的 fcoll 对象将在结果 URL 中转换为查询字符串。
或者传递单个属性:
@Html.ActionLink("Your link text", "ActionName", "ControllerName", new { fcoll.Property1, fcoll.Property2 })
推荐阅读
- cakephp - CakePHP 3.7 - 测试用例文件上传
- sql - 是否可以通过 oracle 中的选择查询将表名传递给 SQL 查询
- javascript - 从 Angular 应用程序路由创建页面预览
- javascript - node.js 令牌删除承诺
- php - Cakephp 3.6.14:为每行创建和提交带有表格和复选框的表单(第二个表单 - 同一页)
- c++ - 从 C++ 实例化包装类
- webpack - Webpack CommonsChunkPlugin
- c# - 在浏览器中打开和编辑 Excel 工作表并使用 Visual Studio C# 保存
- c# - 我想在 Unity3D Android 应用程序中格式化输入字段
- regex - 仅使用 Regex 和 Bash 功能匹配两个连续的行