簡體   English   中英

使用 DropdownFor 傳遞 null 作為默認值

[英]Pass null as default value with DropdownFor

我對一個下拉菜單有很大的問題,因為我需要他不是強制性的。 我找到了一些可空類型的解決方案,如 int?,但這僅適用於 int、datetime 等,但我在模型中的類型是其他對象(引用)。 簡單地說,我有團隊結構,有些團隊沒有父級,因此引用應該為空,那么我該怎么做才能不必選擇下拉列表,並且我為父級團隊獲取空值

型號(簡化):

    public class Team
    {
         public Team ParentTeam { get; set; }
    }

控制器:

     var listTeam = (from team in listOfTeams.AsEnumerable()
                        select new SelectListItem
                        {
                            Text = team.Name,
                            Value = team.ID.ToString()
                        }).ToList();

        SelectList dropDownlistOfTeams = new SelectList(listTeam, "Value", "Text");

並查看:

    <div class="form-group">
            @Html.LabelFor(model => model.ParentTeam, new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.DropDownListFor(model => model.ParentTeam, (SelectList)ViewBag.ListOfTeams, "-- Set Parent --")
            </div>
        </div>

非常感謝。

在控制器中,只需添加一個空團隊。

listTeam.Add(new SelectListItem() {Text="None", Value=null});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM