我有一个Gridview
名为Quantity
. 每个产品都有自己的数量。我需要显示与数量一样多的行。
例如,如果我有
Car | 4 | $ 20
我需要显示 4 行,例如
Car | 1 | 20
我找不到这样做的方法。我正在使用 linq 从数据库中检索数据,这就是DataSource
我的Gridview
.
您可以使用 linq Range方法来做到这一点。假设您有这样的 linq 源(简单示例)
var result =
from r in db.SourceTable
select new { r.Name, r.Quantity, r.Price };
将此添加到查询中
var result =
from r in db.SourceTable
from s in Enumerable.Range(1, record.Quantity)
select new { r.Name, 1, r.Price };
但是,实体框架可能不支持这一点(并且可能在任何其他 ORM 中都不支持),因此您可能需要先调用.ToList()
or .AsEnumerable()
。