我有这两条路线:问题,路由/ T4MVC Url.Action()
routes.MapRoute("Agenda", ConfigurationManager.AppSettings["eventsUrl"] + "/{year}/{month}", MVC.Events.Index(), new { year = DateTime.Now.Year, month = DateTime.Now.Month });
routes.MapRoute("AgendaDetail", ConfigurationManager.AppSettings["eventsUrl"] + "/{year}/{month}/{day}", MVC.Events.Detail(), new { year = DateTime.Now.Year, month = DateTime.Now.Month, day = DateTime.Now.Day });
并将其与此代码完美地工作:
<a href="<%= Url.Action(MVC.Events.Detail(Model.EventsModel.PreviousDay.Year, Model.EventsModel.PreviousDay.Month, Model.EventsModel.PreviousDay.Day))%>" title="<%= Model.EventsModel.PreviousDay.ToShortDateString() %>"><img src="<%= Links.Content.images.contenu.calendrier.grand.mois_precedent_png %>" alt="événement précédent" /></a>
除了当我可以做的链接今天,如果是今天,il只会指向www.myurl.com/agenda,女巫是CnfigurationManager.AppSettings [“eventsUrl”]的价值。我究竟做错了什么?这就像是今天,它指向默认日程表的bak ...
感谢您的帮助!
好了,现在我明白发生了什么事情,因为我的没有参数的网址对于议程和它的第一个女巫是月视图的细节是一样的。我的网址是www.myurl.com/agenda/year/month和www.myurl.com/agenda/year/month/day,因此与这两个参数都是一样的www.myurl.com/agenda/我该如何处理?将旧日期指定为默认参数? – VinnyG 2010-04-16 02:12:52
@Vinny:那么,你会一直有一些日期或其他发生这种情况。您可以让* no *默认值,并在未提供任何内容时显示“未找到”页面,或者您可以决定将哪个视图设置为默认值(每月或每天)并首先放置相应的路径。现在我想到了,第二个选项可能只适用于如果您希望将日视图设置为默认视图,否则'{month}/{day}'会与'month'参数匹配... – 2010-04-16 07:29:10
Thanks Thomas,我尝试改变我的路线的顺序,但它不像我想要的那样工作,因为当我点击链接进入我的每月日历时,它会转到日视图。但通过删除日间视图的默认参数,它完美的工作! – VinnyG 2010-04-16 13:39:55