ホームページ > バックエンド開発 > C++ > 従業員のリストをASP.NETコアMVCのSelectタグヘルパーにバインドする方法は?

従業員のリストをASP.NETコアMVCのSelectタグヘルパーにバインドする方法は?

Barbara Streisand
リリース: 2025-01-28 21:06:09
オリジナル
748 人が閲覧しました

How to Bind a List of Employees to a Select Tag Helper in ASP.NET Core MVC?

ASP.NET Core MVC Select Tag Helper:Binding Employee lists

このガイドは、従業員のリストをASP.NETコアMVCの選択タグヘルパーに効果的にバインドする方法を示しており、選択した値がEmployeeIdプロパティに正しくマッピングされていることを確認してください。

モデル構造の表示:

ビューモデルが次のように構成されていると仮定しましょう

<code class="language-csharp">public class MyViewModel
{
    public int EmployeeId { get; set; }
    public string Comments { get; set; }
    public List<Employee> EmployeesList { get; set; }
}

public class Employee
{
    public int Id { get; set; }
    public string FullName { get; set; }
}</code>
ログイン後にコピー
選択リストの入力:

キーは、

オブジェクトを作成し、ビュー内で使用することです。 コントローラーアクションでそれを行う方法は次のとおりです。

あなたの見解では:SelectList EmployeesList これは プロパティに結合し、オプションテキストとして表示し、値としてを使用して表示します。

<code class="language-csharp">public IActionResult Create()
{
    var vm = new MyViewModel();
    vm.EmployeesList = new List<Employee>
    {
        new Employee { Id = 1, FullName = "Shyju" },
        new Employee { Id = 2, FullName = "Bryan" }
    };
    return View(vm);
}</code>
ログイン後にコピー
従業員の事前選択:

<code class="language-html"><select asp-for="EmployeeId" asp-items="@new SelectList(Model.EmployeesList, \"Id\", \"FullName\")"></select></code>
ログイン後にコピー
従業員を事前に選択するには、ビューモデルに

プロパティを設定してから、ビューに渡します。 SelectList EmployeeIdFullName代替:ViewBagを使用(推奨されることはあまりない):Id

可能ですが、その動的な性質とエラーの可能性のために、を使用することは一般にあまり好まれません。 例を次に示します:

EmployeeId高度なシナリオ:

<code class="language-csharp">public IActionResult Create()
{
    var vm = new MyViewModel();
    vm.EmployeesList = new List<Employee> { /* ... your employees ... */ };
    vm.EmployeeId = 2; // Pre-selects Bryan
    return View(vm);
}</code>
ログイン後にコピー

複数の選択:

ビューモデルで

の配列またはリストタイプを使用して、複数の選択を許可します。 ViewBag

グループ化:
<code class="language-csharp">// Controller
ViewBag.Employees = new List<SelectListItem>
{
    new SelectListItem { Text = "Shyju", Value = "1" },
    new SelectListItem { Text = "Bryan", Value = "2" }
};

// View
<select asp-for="EmployeeId" asp-items="@ViewBag.Employees"></select></code>
ログイン後にコピー

'sプロパティをドロップダウン内のグループオプションに使用します。

より高度な機能とオプションについては、選択したタグヘルパーの公式マイクロソフトドキュメントを参照してください。 モデルから直接
    アプローチを使用することは、一般に

以上が従業員のリストをASP.NETコアMVCのSelectタグヘルパーにバインドする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート