0
我有一個Visitors控制器。內部我有索引和登錄操作。這裏是行動:ASP.NET MVC 2網址格式問題
public ActionResult Index(int month,
int day,
int year){
var visitors = visitorRepoistory.FindVisitorsByDate(month, day, year).ToList();
return View("Index", visitors);
}
[HttpPost]
public ActionResult SignIn(Visitor visitor) {
if (ModelState.IsValid) {
visitorRepoistory.Add(visitor);
visitorRepoistory.Save();
return RedirectToAction("/", new { month = DateTime.Now.Month, day = DateTime.Now.Day, year = DateTime.Now.Year });
} else {
return View(new VisitorFormViewModel(visitor));
}
}
更具體地說,我想了解SignIn()中的RedirectToAction()。我想重定向到我的索引行動,並使網址如下所示:.../2010年8月8日,但我得到:?月= 8 &天= 10 &年= 2010。我怎樣才能解決這個問題?
謝謝。
更新 這裏是我的路線(當URL硬編碼它的工作原理):
routes.MapRoute(
"VisitorsByDate", // Route name
"{controller}/{month}/{day}/{year}", // URL with parameters
new { controller = "visitors", action = "index"}, // Parameter defaults
new { month = @"\d{2}", day = @"\d{2}", year = @"\d{4}" }
);
我的路線是這樣的,當硬編碼的網址是按照以下方式工作:routes.MapRoute( 「VisitorsByDate」,//路線名稱 「{controller}/{month}/{day}/{year}」,//帶參數的網址 new {controller =「visitors 「},action =」index「},//參數默認值 new {month = @」\ d {2}「,day = @」\ d {2}「,year = @」\ d {24}「} ); – Mike 2010-08-10 17:22:20
糟糕。我用我的路線更新了原文。 – Mike 2010-08-10 17:23:28
啊...事實證明,我的月(DateTime.Now.Day)只是一個整數,這就是爲什麼路線沒有被拾起。謝謝! – Mike 2010-08-10 17:33:11