asp.net-core - 在asp net core中执行代码后传递路由值?
问题描述
[HttpGet]
public async Task<IActionResult> AnswerExam(int examId)
{
var obb = onlineExamDBContext.QuestionAndAnswers.Where(x => x.ExamId == examId);
return View(await obb.ToListAsync());
}
<a asp-action="AnswerExam" asp-route-id="@item.ExamId">Attempt</a>
但稍后在代码执行后,我可以看到在 url https://localhost:44395/CandidateExam/AnswerExam/16中传递的 id
但是 id 16 没有被传递给 action 方法??是什么原因?请帮忙!!
解决方案
[HttpGet]
public async Task<IActionResult> AnswerExam(int examId)
{
var obb = onlineExamDBContext.QuestionAndAnswers.Where(x => x.ExamId == examId);
return View(await obb.ToListAsync());
}
发现问题。上述操作方法中的examId应与路由值匹配,例如
asp-route- examId =“@item.ExamId”
推荐阅读
- javascript - 编写一个接受字符串并返回仅包含元音的新字符串的函数
- python - Scrapy:如何解析多个页面?
- python - 将 Textblob 翻译问题转换为 pandas 数据框
- r - 根据用户输入更新 x / y 图(闪亮)
- python - Python:如何使用日期作为参数从第三个 python 脚本自动化两个 python 脚本?
- node.js - 如何从 Docker 中运行的 rabbitMq 容器向 Localhost 发送请求
- google-sheets - 谷歌表格条件格式问题
- qt - 在 QML 中以类似 VU 的图像作为背景实现滑块
- selenium - 自动手动单击 Web 应用程序
- php - 数组条件和数量的指针