我有一个C#ASP.NET MVC的项目,但我的控制器都写在F#。ASP.NET MVC F#控制器动作忽略参数
出于某种原因,下面的代码不能正常工作:
namespace MvcApplication8.Controllers
open System.Web.Mvc
[<HandleError>]
type ImageController() =
inherit Controller()
member x.Index (i : int) : ActionResult =
x.Response.Write i
x.View() :> ActionResult
动作的参数就好像忽略了......
结果此错误消息:
参数字典包含 的空项,用于方法 的非空可选类型'System.Int32' 'MvcApplication8.Controllers.ImageController'的'System.Web.Mvc.ActionResult索引(Int32) 。一个可选参数 必须是引用类型,可空类型,或声明为 可选参数。
Parameter name: parameters
控制器,否则正常工作。我知道很多人写了F#MVC代码,所以我有什么想法会出错?
我不是F#专家,但你可以定义我是UrlParameter.Optional。 – 2010-05-03 01:04:36
这给了我编译错误,我害怕。我GOOGLE了这种类型,它似乎是用于路由而不是控制器。 – 2010-05-03 01:10:43