【问题标题】:Using ViewBag to Fill Dropdown with Custom Text使用 ViewBag 使用自定义文本填充下拉列表
【发布时间】:2015-12-15 09:53:47
【问题描述】:

我正在使用 ViewBag 来填充 Dropdown,如下所示:

控制器:

ViewBag.bolumList = db.SbtBolum.OrderBy(s => s.BolumAd)

查看:

@Html.DropDownListFor(model => model.YGKisiBolum.Bolum, new     SelectList(ViewBag.bolumList, "BolumID" , "BolumAd"), "Seçiniz", new { @class = "form-control" })

现在我想在文本字段中显示组合的两列,就像在 SQL 中一样:

SELECT BolumID As Value, BolumAd+" "+BolumExtra AS Text FROM SbtBolum

如何使用 ViewBag 和 Linq 做到这一点?

【问题讨论】:

    标签: c# asp.net-mvc linq linq-to-sql viewbag


    【解决方案1】:
    var values = db.SbtBolum.OrderBy(s => s.BolumAd).ToList().Select(s => SelectListItem
    {
        Value = s.BolumID.ToString(),
        Text = s.BolumAd + " " + s.BolumExtra,
    });
    ViewBag.bolumList = values;
    

    在你看来:

    @Html.DropDownListFor(
        model => model.YGKisiBolum.Bolum, 
        (IEnumerable<SelectListItem>)ViewBag.bolumList, 
        "Seçiniz", 
        new { @class = "form-control" }
    )
    

    说到/显示,我完全不推荐这种方法。为此,我宁愿使用强类型视图模型并摆脱 ViewBag。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 1970-01-01
      • 2016-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多