asp.net mvc ModelBinder总是为null

时间:2013-11-12 18:59:27

标签: c# asp.net-mvc asp.net-mvc-4

我在我的asp.net mvc 4网站上建模了活页夹。

public class OptionModelBinder : System.Web.Mvc.IModelBinder
        {         
            private const string SessionKey = "Opt";
            public object BindModel(ControllerContext controllercontext, System.Web.Mvc.ModelBindingContext bindingContext)
            {

                    Option opt = (Option)controllercontext.HttpContext.Session[SessionKey];
                    if (opt == null)
                    {
                        opt = new Option ();
                        controllercontext.HttpContext.Session[SessionKey] = opt ;

                    }
                    return opt;
                 }
        }

和控制器:

publick ActionResult Index(Option currentOption)
{
//currentOption always null
}

我确信它之前有效。由于最近的更新解决方案,发生了一些事情。 我不明白出了什么问题。请帮忙。

1 个答案:

答案 0 :(得分:1)

检查 Global.asax.cs 中的 Application_Start 方法 确保有像

这样的东西
ModelBinders.Binders.Add (typeof (Option), new OptionModelBinder ());

必然