

至急解決したいです。

環境：Asp.Net MVC4(cshtml)

submitで、viewにバインドしてるviewmodelをコンロトーラーへpostしたいのですが  
「同一のキーを含む項目が既に追加されています。 」として  
'/' アプリケーションサーバー エラーが発生します。

何が悪いのかわからず、どなたかご教授頂けないでしょうか？

＜cshtml＞

[code]

    @model 名前空間.ViewModels.サンプルViewModel
    …略…
    @using (Html.BeginForm("Index", "コントローラー名", FormMethod.Post))
    {
        …略…
    
        <td><input type="submit" value="登録"/></td>
    
    }
    
[/code]

＜コントローラー＞

[code]

    // 初期表示
    [HttpGet]
    public ActionResult Index(string dType)
    {
        var ViewModel = new サンプルViewModel();
    
        …(ViewModelにもろもろセット)…
    
        return View(ViewModel);
    ｝
    
    // 登録
    [HttpPost]
    public ActionResult Index(サンプルViewModel vm)
    {
        …略…
    }
    
[/code]

よろしくお願い致します。


CC BY-SA 4.0
2018-10-21T05:54:46.650
49494
2021-12-17T03:06:10.503
2018-10-21T05:58:29.567
3060
30436
question
c# asp.net mvc
submit時、同一のキーを含む項目が既に追加されていますエラー発生


すみません、自己解決しました。

view 内でデバッグ用に設けていた同一内容の input タグが、ModelState の key, value
のペアセットの重複エラーとなっていたようです。

デバッグ用を削除したら無事 POST され、Viewmodel も引き継がれました。

* * *

_この投稿は[@user30436
さんのコメント](https://ja.stackoverflow.com/questions/49494/submit%e6%99%82-%e5%90%8c%e4%b8%80%e3%81%ae%e3%82%ad%e3%83%bc%e3%82%92%e5%90%ab%e3%82%80%e9%a0%85%e7%9b%ae%e3%81%8c%e6%97%a2%e3%81%ab%e8%bf%bd%e5%8a%a0%e3%81%95%e3%82%8c%e3%81%a6%e3%81%84%e3%81%be%e3%81%99%e3%82%a8%e3%83%a9%e3%83%bc%e7%99%ba%e7%94%9f#comment51541_49494)
の内容を元に コミュニティwiki として投稿しました。_


CC BY-SA 4.0
2020-08-27T04:51:42.893
69908
2020-08-27T04:51:42.893
3060
49494
answer