c# - ASP.NET:保存和显示从 URL 传递的值
问题描述
我已将字符串值farmName
从一个控制器传递到另一个控制器。
<a asp-action="Index" asp-controller="JFTreatment" asp-route-farmName="@item.Farm.Name">link</a>
我可以在我的索引视图中看到它已成功通过:
我现在想farmName
在我的编辑视图中显示为标题,但我不确定如何设置会话字符串或如何显示它的语法。
解决方案
假设您使用ViewData["Title"]
在每一页上设置的字典设置您的标题。您可以执行以下操作以farmName
从 Url 获取。
选项1:直接从查询集合中获取查询值
foreach(var query in HttpContext.Request.Query)
{
if(query.Key == "farmName")
{
ViewData["Title"] = query.Value;
}
}
选项 2:获取您的路线数据作为方法参数(推荐)
要使此选项起作用,您的Index
方法应如下所示:
public IActionResult Index(string farmName, int? plotId = null){
ViewData["Title"] = farmName;
... Some more code
}
这里的路由属性是通过动作参数接收的...
推荐阅读
- go - 防止修改结构数据成员的惯用方法
- java - Vertx-java-HttpClient:如何派生 maxPoolSize 和 maxWaitQueueSize 值及其影响
- passport.js - user.validatePassword 不是函数
- javascript - 使用 JS 对象作为 API 的缓存
- c# - 如何统一在特定区域进行屏幕截图
- c# - 将带有附件的信息发送到一个电子邮件地址,尤其是使用谷歌
- javascript - 执行 npm start 时出错。未找到预构建的二进制文件
- json - ReactJS 根据第一个下拉列表选择的值使用 ajax 填充下拉列表
- nlp - 如何设置最大 CPU/内核数以将 BERT 作为服务运行?
- python - 使用 python 发送消息