我有一个模特:
public class Model
{
public string Id { get; set }
public List<SelectListItem> Items { get; set; }
}
现在我认为我有:
@foreach (var item in Model)
{
@Html.DisplayFor(modelItem => item.Items.Where(t=>t.Value == item.Id).Select(t=>t.Text))
}
基本上,Items属性将具有以下内容:
Value = 1
Text = "Somethnig"
Value = 2
Text = "Somethnig else"
Value = 3
Text = "Somethnig else in here"
Id属性将保存项目的值,可以是1, 2, 3 and so forth
。
如何在视图中显示项目的文本而不是值?
答案 0 :(得分:0)
如果要访问“项目”列表,请尝试此操作。
@foreach (SelectListItem item in Model.Items)
{
@Html.DisplayFor(item.Text)
}
现在,如果var item
是object
的{{1}} DatatType,请尝试此操作。
Model
注意:如果列表中没有符合表达式@foreach (var item in Model)
{
@Html.DisplayFor(modelItem => item.Items.Where(t=>t.Value == item.Id)[0].Text)
}
的对象,则索引0中不会有对象,因此会给你一个t.Value == item.Id
。
答案 1 :(得分:0)
试试这个:
foreach(var item in Model)
{
value: item.Id
Text: item.Text
}
答案 2 :(得分:0)
我正在研究.net MVC3
我有两张桌子
CREATE TABLE IF NOT EXISTS `examen_paco`.`consola` (
`id` INT NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(200) NULL,
PRIMARY KEY (`id`))
-- -----------------------------------------------------
-- Table `examen_paco`.`juegos`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `examen_paco`.`juegos` (
`id` INT NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(200) NULL,
`consola_id` INT NOT NULL,
PRIMARY KEY (`id`),
我做了一个查询,向我展示了控制台表的列表。
现在,我希望您点击一个控制台游戏节目列表,其中包含属于每个控制台的ID。
我在控制器中使用C#。