MVC、Visual Basic、SQLを用いてデータベース管理画面の作成をしています。
①DBから取得してきた値を 単一を選択するドロップダウンリスト の値としてセット
②ユーザーが実際に画面に表示されたリストからどれかを選択した状態で検索ボタン押下
③選択された値で再度DBで絞り込み検索
④画面に一覧表示
のような動きを作成しています。
環境はVisual Stadio MySQLです。
知りたいこと
コードに問題がある というわけではないのですが純粋に
「ドロップダウンリストで選択されたもの」は
・なにで(文字列なのか番号なのか...?)かえってくるんだろう
・どこに値として渡されるのだろう
とふと思い、検索をしてみました。
単純すぎますが、
「ASP.Net DropDownList 選択値 何」
「ASP.Net DropDownList 選択値 どこへいく」
「ASP.Net DropDownList 選択値 取得」
等で調べましたが逆に分からなくなってしまいました。
求める回答
・DropDownListの選択値は何ですか
例:DBで取得した値 → ViewModelのプロパティに渡す
パンダ
うさぎ
ライオン
でDropDownListから、例えば「うさぎ」を選択した際に
「うさぎ」のような文字列が渡されるのか
上から=0 =1 =2のように内部的にナンバリングされていて= 1が渡されるのかもしくは全く違うものか
・DropDownListの選択値は 検索ボタン押下時にどこへ渡るのか
予想はViewModelですかね
です。
何卒よろしくお願いいたします。
追記
開発環境 Windows10 Visual stadio2019 .NET Framework MVC5 です。
また、初めての質問で大変申し訳ないのですが、別にエラーや問題があるわけではなく異常なく動いたうえでの素朴な疑問になります。
疑問点は求める回答の項をご覧ください。
※問題があるわけではないので問題点・エラーの項の名称を知りたいことに変更しました。
追記2
Controller
Visual
1' 初期表示 2<HttpGet> 3Pubric Function Animal(Model as AnimalViewModel)As ActionResult 4 Dim AnimalM As AnimalModel 5 6 Return View(AnimalM.AnimalGet) 7End Function 8 9' 再帰 10<param name="argModel">ビューモデル</param> 11<return>ActionResult</return> 12<HttpPost, ValidateInput> 13Pubric Function SearchAnimal(Model as AnimalViewModel)As ActionResult 14 ※まだ組み立ててないのでないです 15 Return View《選択されたものから再度DBでSELECTした検索結果を返したい》 16End Function
AnimalModel
Visual
1Pubric Function AnimalGet()As AnimalViewModel 2 Dim selectanimal As New AnimalViewModel 3 4 ' DBを呼び出してリスト取得 5 Using db = New Dbclass.AnimalDb 6 Using dt = New DataTable 7 selectanimal.Animallist = db.GetAnimalName(dt) 8 End Using 9 End Using 10 11 Return selectanimal 12End Function 13 14Public Property Animallist as Selectlistitem
AnimalDb
Visual
1' メソッド 2Pubric Function GetAnimalName(ByVal argDt As DataTable)As SelectList 3 4 Return New SelectList(Me.getanimalnameforSql, argDt.Columns.ColumnName) 5End Function 6 7 8' SQL 9Private getanimalnameforSql As String = <Query><![CDATA[ 10 SELECT 11 Name 12 FROM 13 Animal 14]]</Query>.Value.Trim()
AnimalViewModel
Visual
1'''動物の名前リスト 2Public Property Animallist as Selectlist
view
<div class="row mt-3"> <div class="col mt-3"> <p>どうぶつさんをせんたくしてボタンをおそう!</p> </div> </div> @Using Html Beginform() @<text> <div class="from-row form-group"> <div class="col mt-3"> @Html.DropDownListfor(Function(model) model.Animallist, Model.Animallist New With{.class = "form-control form-control-sm" }) <div> <div> </text> End Using
回答1件
あなたの回答
tips
プレビュー