0

私は理解できないように見えるこの問題を抱えています。コントローラーにデータを投稿しています。コントローラーの宣言は次のようになります。

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

Fiddlerを使用すると、投稿されたデータは次のようになります

Fiddler 投稿データ

投稿時に次のエラー メッセージが表示されます。

パラメーター ディクショナリには、nullメソッド 'System.Web.Mvc.ActionResult Create(System.String, System.String, System.String, System.String, System.String, System.String, System.String, System.Web.Mvc.ActionResult 「GjortWebRole.Controllers.MyController」の.String、Single、Single)」。オプションのパラメーターは、参照型または null 許容型であるか、オプションのパラメーターとして宣言する必要があります。パラメータ名: パラメータ

4

2 に答える 2

2

この質問で述べたように、MVCModelBinderにはそのままでは for フロートが付属していません。アクションが float 引数を受け入れるようにする場合は、独自に作成する必要があります。

于 2012-04-22T14:39:00.650 に答える
0

パラメータ表の通り、経度(float)パラメータの順に都市値(String)を送信します。経度パラメーターの前に都市パラメーターをアクション メソッドに追加してみてください。

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
   .
   .
   .
}
于 2012-04-22T14:04:45.740 に答える