将字符串作为参数传递给控制器​​

将字符串作为参数传递给控制器​​

问题描述:

我知道这可能是非常明显的,但我无法弄清楚为什么我不能将字符串参数传递给控制器​​,比如一个int。将字符串作为参数传递给控制器​​

例如

//controller/action/2 
public ActionResult Action(int someInt) 
{ 
//somenumber != null 
} 

,但是当我在传递一个字符串像这样...

//controller/Action/x9294kskw 
public ActionResult Action(string someString) 
{ 
//someString = null 
} 

我缺少什么?我猜这与路由有关,但是......我不知道。 谢谢!

编辑:

也许我读了斯科特谷的博客有点太不小心,但这个地方记录?我应该检查路线!

是否有一个特定的原因,为什么字符串处理不同于整数?

它需要具有名称'id',如路由默认配置中的设置。

+0

澄清:它不具有名称“id” - 它只需要具有与路径中定义的*相同的*名称。 – 2009-01-09 08:38:46