MVC3模型绑定错误:...但参数需要值类型

时间:2012-03-29 20:25:41

标签: asp.net-mvc-3

我在数据中心的服务器上遇到异常,但我没有在我的开发箱上收到错误,也没在我办公室的服务器上收到错误。

这是我的控制器方法

[HttpPost]
public ActionResult Index(IndEvent[] events)

我的视图中有一堆复选框,mvc然后给了我一个IndEvents数组,复选框绑定到一个bool。

如果用户没有选中任何框,我会得到一个完整的数组,其中bool为false。

在数据中心,当用户没有检查任何框时,我得到一个字符串[],而不是一个IndEvent []。

  

消息:参数字典包含无效条目   方法'System.Web.Mvc.ActionResult的参数'events'   指数(MAC.Common.WebMACTexas.Areas.IndustryEvent.Models.IndEvent [])”   在   'MAC.Common.WebMACTexas.Areas.IndustryEvent.Controllers.RegisterController'。   字典包含'System.String []'类型的值,但是   参数需要值类型   'MAC.Common.WebMACTexas.Areas.IndustryEvent.Models.IndEvent []'。

本地MVC版本:3.0.11209.0

DataCenter 3.0.11209.0上的MVC版本

++如果你没有在这里阅读这篇文章的第一行,那就是:

我在数据中心的服务器上遇到异常,但我没有在我的开发箱上收到错误,也没在我办公室的服务器上收到错误。

1 个答案:

答案 0 :(得分:0)

现在有办法通过webrowsers传递一个对象。您只能传递索引应该类似于

的字符串
public ActionResult Index(string somepropetry)
{

  using(var context = new SiteContext())
  {
     var events = context.IndEvents.where(e=>e.property.equal(someproperty).toList();
     return View(events)
  }

}

取决于你想要如何过滤它