データベースにクエリを実行してを取得しているアプリがありますDataTable
。の要素に依存する要素を<select>
持つをビューに作成する必要があります。私の質問は、HTMLヘルパーを使用してこの種のビルドを行う方法はありますか?もしそうなら、どのように?私はHTMLヘルパーにあまり詳しくありません。<option>
DataRow
DataTable
<select>
ありがとうございました!
データベースにクエリを実行してを取得しているアプリがありますDataTable
。の要素に依存する要素を<select>
持つをビューに作成する必要があります。私の質問は、HTMLヘルパーを使用してこの種のビルドを行う方法はありますか?もしそうなら、どのように?私はHTMLヘルパーにあまり詳しくありません。<option>
DataRow
DataTable
<select>
ありがとうございました!
やり方がある。まず、あなたを に入れDataTable
ますSelectList
。SelectList
それを、ユーザーの選択に対応するプロパティ ( と呼びましょう) と共に、モデル クラスに入れますCarId
。
モデルは次のようになります。
public class MyModel
{
public SelectList Cars { get; set; }
public int CarId { get; set; }
}
次に、ビューで HTML ヘルパー メソッドを次のように使用できますDropDownListFor
(以下では Razor を想定しています)。
@Html.DropDownListFor(model => model.CarId, Model.Cars)
あなたが探しているヘルパーはこれらです
@Html.DropDownList
@Html.DropDownListFor
それらを使用する最も簡単な方法は、列挙可能な選択リストを使用することです
public IEnumerable<SelectListItem> DDLItems { get; set; }
通常はエンティティから入力しますが、既にデータテーブルがあります。そのデータテーブルをどのように取得していますか?変更できますか?
DDLItems = new SelectList(context.Table.ToList(),"ValueColumn","TextColumn",Model.Property);
あなたがそれを行うことができれば、あなたの見解ではこれを行うことができます
@Html.DropDOwnListFor(model => model.Property, DDLList)