参数字典包含一个空条目“

时间:2012-04-22 13:47:51

标签: asp.net-mvc-3

我有这个问题,我似乎无法弄明白。我将数据发布到我的控制器。控制器声明如下所示:

public ActionResult Create(string Title, string Description, string Payment, string Adress, string ZIP, float Longitude, float Latitude)

使用Fiddler,发布的数据如下所示

Fiddler posted data

发布时收到此错误消息:

  

参数字典包含一个null条目,用于非可空类型'System.Single'的参数'Longitude',用于方法'System.Web.Mvc.ActionResult Create(System.String,System.String,System) .string,System.String,System.String,Single,Single)'in'GjortWebRole.Controllers.MyController'。可选参数必须是引用类型,可空类型,或者声明为可选参数。       参数名称:参数

2 个答案:

答案 0 :(得分:2)

this question中所述,MVC没有为ModelBinder提供开箱即用的浮点数。如果您希望操作接受浮动参数,则必须创建自己的。

答案 1 :(得分:0)

如参数表所示,您可以按经度(浮点)参数的顺序发送城市值(String)。尝试在经度参数之前将city参数添加到您的操作方法。

public ActionResult Create(string Title, string Description, string Payment, string Adress, string ZIP,string City, float Longitude, float Latitude)

<强>更新

根据您的意见,Create方法声明应如下

[HttpPost]
public ActionResult Create(FormCollection myform)
{
   String Title = myform["Title"];//title is the name of html tag
   Strign ZIP = myform["ZIP"];//ZIP is the name of html tag
   .
   .
   .
}