0

aspnetcore mvc、dotnet バージョン 6 を使用しています。ビューで入力を取得しようとしています。以下のコードは、購入者ユーザーと配信ユーザーをリストで取得しようとしています。しかし、コントローラーからのモデルのリストにそれらをバインドできません。

これが私のコードです:

public async Task<IActionResult> SendMainFlow(List<IFormFile> files, string[] DeliveryUsers, List<BuyerUsers> BuyersModel)
    {
        
        return BadRequest();
    }

ビューから:

<form class="col-12 col-md-6" method="POST" action="/WorkManagement/SendMainFlow" enctype="multipart/form-data">
    <div class="">

        <label>
            Dosyalar:
        </label>
        <input type="file"
               class=" col-12"
               name="files"
               multiple/>
    </div>
    <hr class="row " />
    <div class="row m-1">
        <label class="col-12 text-primary">
            Satın alacak kişiler:
        </label>
        <div id="BuyerInputArea" class="col-lg-12">
            <div class="inputBuyerRow first-input">
                <div class="input-group mb-3">
                    <input type="text" name="BuyerUserName" class="form-control m-input col" placeholder="İsim" autocomplete="off">
                    <input type="text" name="BuyerUserLastName" class="form-control m-input col" placeholder="Soyisim" autocomplete="off">
                    <input type="text" name="BuyerUserMail" class="form-control m-input col" placeholder="E-Posta" autocomplete="off">
                    <div class="input-group-append">
                        <button id="removeBuyer" type="button" class="btn btn-danger">Kaldır</button>
                    </div>
                </div>
            </div>
            
            <button id="addBuyer" type="button" class="btn btn-info">Kişi Ekle</button>
        </div>
    </div>
    <hr class="row " />
    <div class="row m-1">
        <label class="col-12 text-primary">
            Dağıtılacak kişiler:
        </label>
        <div id="DeliveryInputArea" class="col-lg-12">
            <div id="DeliverySignerRow">
                <div class="input-group mb-3">
                    <input type="text" name="DeliveryUserMail" class="form-control m-input col" placeholder="Mail" autocomplete="off">
                    <div class="input-group-append">
                        <button id="removeRow" type="button" class="btn btn-danger">Kaldır</button>
                    </div>
                </div>
            </div>

            <div id="newRow"></div>
            <button id="addDealer" type="button" class="btn btn-info">Kişi Ekle</button>
        </div>
    </div>
    <div class="row m-2">
        <button class="col-12 btn btn-info" type="submit">
            İŞLEM BAŞLAT
        </button>
    </div>

</form> 

ここでは、任意のタイプのユーザーを 1 人取得できます。バイヤーまたは配送ユーザーを意味します。しかし、私はユーザーのリストを取得したい。また、私のコードは #BuyerUserArea に #inputBuyerRow を動的に追加しようとします。

コードと混同しないでください。コードは簡単です。入力をフォームタグで投稿したい。コントローラー側では、あらゆるタイプのユーザーをリストに入れたいと考えています。必要ないと思うので、モデルを示しませんでした。主な問題は、オブジェクトのリストのように BuyerModel で #inputBuyerRow 入力を取得するにはどうすればよいですか? #addBuyer ボタン コードに #inputBuyerRow 要素を追加します。ユーザーも増えるでしょう。

どうやってやるの。グループなどを入力する必要がありますか? 例は見つかりませんでした。

私の制約は次のとおりです。

  • Ajax Jquery などは使用できません。form タグを使用する必要があります。
  • コントローラー側でリストを使用する必要があります。

編集:コントローラーで、文字列配列とモデルを使用して入力を取得して、ビューがどのように送信されるかを調べようとしました。したがって、このコードと混同しないでください。私はちょうどしようとしていた。特にない。

4

1 に答える 1