遍历记录集行中的行项

问题描述 投票:-1回答:1

我想遍历记录集的行并获取值而不知道列名称:

var db = Database.Open("SomeDb");
var rows = db.Query("SELECT * FROM SomeTable");
var result = "";

foreach (var r in rows)
{
    foreach (var f in r.<SomeProperty>) //Need help here
    {
        result += f + "/"; //Doing somthing with each value in each row
    }
}

由于我不知道列名,或者列数如此之高以至于我不想对每个列进行拼写,我需要另一种方法来获取内部foreach中每行的不同值。试图搜索这个但尚未找到任何答案。

由于列名可以通过res.First()。列找到,我可以循环遍历这个列名列表,但还有另一种简单的方法吗?

编辑:问题的三个原因:知识:我们可以使用循环遍历每一列的记录集对象必须有一个方法或属性。最小化代码:如果将输出写入表,如果需求发生变化,我只能更改SQL而不是表定义。例如。如果我想在表中添加Age列,我只需将它添加到SQL中,并使用res.First()自动将Age列添加到表中。标题列。 ReBse:当要将大型和不同的表写入XML时,只需更改输入表和输出文件即可轻松使用此方法。

c# razor recordset
1个回答
0
投票

很抱歉发布此作为答案应该发表评论(没有足够的代表)。

在我看来,你需要一个强类型的模型。我知道你说你不知道列有多少列,但是如果你真的不知道列是什么,那么你怎么能希望对它们进行正确的操作呢?

我在这里错过了什么吗?

© www.soinside.com 2019 - 2024. All rights reserved.