创建具有可变列名的LINQ语句
本文关键字:LINQ 语句 创建 | 更新日期: 2023-09-27 18:21:18
我正在为一个平面表创建一个树视图。我有一个linq查询,它从列返回所有不同的值
public ActionResult Index()
{
var result = (from i in db.Items
select i.GeoName)
.Distinct()
.OrderBy(n => n);
return View(result);
}
当然,这会返回一个带有起始节点的视图(假设为"Node1"、"Node2"answers"Node3")。
然后我想让用户点击一个节点,并返回该列的内容。
你是如何动态地做到这一点的?
我希望它像一样简单(很可能是,我不知道-LINQ新手!)
public ActionResult Index()
{
var result = (from i in db.Items
select i.passedInColumnName)
.Distinct()
.OrderBy(n => n);
return View(result);
}
和往常一样,提前感谢你们这些乐于助人的人。
您可以使用表达式树来实现这一点,但它非常深入,我建议使用SQL作为Linq并不是您想要实现的最佳解决方案。
对此的SQL是:
SELECT DISTINCT
passedInColumnName
FROM
Items
WHERE
GeoName = 'the geo name'
ORDER BY
passedInColumnName