将参数传递到htm.actionlink中会产生奇怪的结果
本文关键字:结果 参数传递 htm actionlink | 更新日期: 2023-09-27 18:23:42
我有一个将参数传递到htm.action链接的
我的代码:
控制器:
public ActionResult NewsInfo(string id)
{
ViewBag.Messege = "News Detail";
return View(new NewsInfoModel(id));
}
型号:
public class NewsInfoModel
{
public NewsDto News { get; private set; }
public List<ComentDto> comentList { get; private set; }
public NewsInfoModel(string id)
{
comentList = new Coment().MakeComentListForNews(id);
News = new NewsDao().GetNewsByID(id);
}
}
视图中要链接的代码:
@Html.ActionLink("more >>", "NewsInfo", "Home", new { id = news.Id });
问题是当我启动我的网页链接时,格式如下:
http://localhost:52748/Home/NewsInfo?Length=4
为什么选择Lenght = 4
?为了让它现在工作,我做了这样的代码:
<a href="/home/NewsInfo?id=@news.Id"> more >> </a>
它工作正常,但我想使用ActionLink
,那么如何正确地传递参数呢?这两种方法有什么不同。最后一个问题是,这个链接显示more >>;
(末尾有分号,从哪里来?)
若答案是遗忘的,不要生气,我正在启动mvc的东西
感谢:)
尝试
@Html.ActionLink("more >>", "NewsInfo", "Home", new { id = news.Id }, null);
正在添加null作为最后一个参数。我想我以前见过这种情况,添加null就成功了。
我不确定length
是从哪里来的,但这是Html.ActionLink
有这么多过载的奇怪副作用。
编辑:
啊,刚刚发现这个:
为什么Html.ActionLink渲染"?Length=4"