C# NPoco中任意查询的处理
我觉得我在这里遗漏了一些明显的东西,我如何通过NPoco运行查询并检索任意数量的可能不同类型的值作为结果 示例 假设我有一张这样的桌子:C# NPoco中任意查询的处理,c#,npoco,C#,Npoco,我觉得我在这里遗漏了一些明显的东西,我如何通过NPoco运行查询并检索任意数量的可能不同类型的值作为结果 示例 假设我有一张这样的桌子: |-------------------|------------| | ID | AMOUNT | DATE | |-------------------|------------| | 1 | 2300 | 01/02/2014 | | 2 | 400 | 03/02/2014 | | 3
|-------------------|------------|
| ID | AMOUNT | DATE |
|-------------------|------------|
| 1 | 2300 | 01/02/2014 |
| 2 | 400 | 03/02/2014 |
| 3 | 1200 | 06/02/2014 |
| 4 | 950 | 06/02/2014 |
|-------------------|------------|
我想使用以下内容(MSSQL)查询此表:
所以我想我会使用类似于下面的代码,其中db
是一个NPoco数据库
对象
var result = db.Query(<query string>);
但我无法理解访问/使用结果的语法,而且这一切看起来非常笨拙,我肯定我一定是走错了方向
总结如下:
如何使用NPoco运行返回不同(任意)类型列的查询,然后访问和使用这些值?尝试使用
db.FirstOfDefault(queryString)
而不是db.query
,然后从字典中获取值(键是列名)。查询只返回一行,因此您可以从结果中简单地获取第一个字典:
result = db.Query<Dictionary<string, object>>(queryString)
var dictionary = result.First();
之后,您可以简单地将对象转换为所需的数据类型。(例如使用)你在正确的轨道上。查询只返回一行,因此您可以从结果中简单地获取第一个字典:
result = db.Query<Dictionary<string, object>>(queryString)
var dictionary = result.First();
之后,您可以简单地将对象转换为所需的数据类型。(例如使用)非常感谢,这帮我解决了这个问题。我知道这会很简单!非常感谢,这帮我解决了问题。我知道这会很简单!实际上,如果您只期望(并且可以处理)一个,那么SingleOrDefault会更好。实际上,如果您只期望(并且能够处理)一个,那么SingleOrDefault会更好。那么他的原始代码就可以正常工作了。
result = db.Query<Dictionary<string, object>>(queryString)
var dictionary = result.First();
dictionary["MOST_RECENT_ORDER_DATE"]
dictionary["TOTAL_AMT_OF_ORDERS"]