
前提
ASP.NETを使用しています。
前回の質問ではテキストボックスを使用してテーブルの検索機能を作成しましたが https://teratail.com/questions/5uqbokcpzdugfa
追加で、ドロップダウンリストも使用したいと思っています。
テキストボックスに文字を入れて、ドロップダウンリストで選択し、検索ボタンを押すと、
もともと表示されているBihinテーブルからヒットしたものを表示したいと思っています。
データベースに接続し、index.cshtmlで一覧画面が表示されています。
テキストボックスの値も取得し、検索ボタンを押すとBuppinNameカラムからあいまい検索でヒットしたものの表示は出来ています。
実現したいこと
ドロップダウンリストからBihinというSQLテーブルからBikouクエリの内容を選択できるようにしたいです。
選択した後に検索ボタンを押すとテキストボックスとドロップダウンリストのどちらの内容ともヒットするものを表示したいです。
発生している問題・エラーメッセージ
テキストボックス、ドロップダウンリスト、検索ボタン
index.cshtml
@using (Html.BeginForm()) { //テキストボックス @Html.TextBoxFor(model => model.searchString) //ドロップダウンリスト @Html.DropDownListFor( model => model.dbBikou, new List<SelectListItem> { 選択リストの表示 } ) //検索ボタン <input type="submit" value="検索" /> }
該当のソースコード
Bihin2Controller
c#
1public ViewResult Index(Bihin2Model model) 2{ 3 if (!String.IsNullOrEmpty(model.serchString)) 4 { 5 // SELECT * FROM Bihin LIKE searchString で検索したレコードを DataTable に取得 6 } 7 else 8 { 9 // SELECT * FROM Bihin で全レコードを DataTable に取得 10 } 11 12 // DataTable から List<BihinDB> modelList を生成 13 List<BihinDB> modelList = new List<BihinDB>(); 14 ・・・ 15 16 model.modelList = modelList; 17 return View(model); 18}
Bihin2Model
public string searchString { get; set; } public List<BihinDB> modelList { get; set; } public string dbBikou { get; set; }
試したこと
index.cshtmlに@Html.DropDownListForを使ってドロップダウンリストを追加。
{選択リストの表示}に備品カラムの内容を表示したいが、表示の仕方が分かりません。
controllerには
SELECT DISTINCT Bikou FROM Bihin
を使用して選択リストの重複をなくそうと考えています。
補足情報(FW/ツールのバージョンなど)
ASP.NET MVC
Windows 10 Pro,
Visual Studio2022 Version 17.3.2
.NET framework 4.7.2












回答1件
あなたの回答
tips
プレビュー