2012-05-10 14 views
1

データを持つモデルがあります。 私はオンボタンだけのフォームを作成していますが、私はそのモデルのデータを使用していません。 ボタンを押すと、HTTPPOSTメソッドが正しく実行されますが、モデルは完全に空です。ポストのMVC3空モデル

HTML:

@model ViewModels.RequestDeletionViewObject 
@using (Html.BeginForm()) 
    { 
    <input type="submit" value="submit"/> 
    } 

RequestDeletionViewObject:

public class RequestDeletionViewObject : ViewModelBase 
    { 
     public TreeGridData NodeFilespacesData { get; set; } 
     public Dictionary<long, string> EmailList{ get; set; } 
    } 

コントローラー:

public ActionResult RequestDel() 
     { 

      return View(_businessLogic.GetData()); 

     } 

     [HttpPost] 
     public ActionResult RequestDel(RequestDeletionViewObject model) 
     { 
      return View(_businessLogic.GetData()); 
     }  

私は、他の多くの場所で同様のことをしてくれました。それはそこで働いていましたが、ここでは何が分かりませんか? ありがとう

+0

私は確かではありませんが、あなたはそれを "生きて"保つためにビューの値を渡す必要はありませんか? – mattematico

答えて

2

フォームにフォームコントロールがありません。フォームは、フォームコントロール(テキストボックス、非表示フィールド、チェックボックスなど)にあるデータのみを投稿します。

ビューに送信するデータは問題ではありませんが、データはフォームコントロールフォーム内で

+0

MMが正しいです.NodeFilespacesDataまたはEmailListにコントロールを関連付けて、フォームにデータがあるようにするか、public stringのようなプロパティを追加してテストします。TestString {get;セット; }をあなたのモデルに追加し、@ Html.TextBoxFor(model => model.TestString)をビューに追加してください。 –

+0

ありがとう、これは大いに役立ちます!それはあなたが提案したとおりに正確に働いた:) –

関連する問題