Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Dapper Querylist返回类型_C#_Asp.net Mvc_Dapper - Fatal编程技术网

C# Dapper Querylist返回类型

C# Dapper Querylist返回类型,c#,asp.net-mvc,dapper,C#,Asp.net Mvc,Dapper,我的代码如下所示 using (IDbConnection cnn = new SqlConnection(GetConnectionString())) { var result = cnn.QuerySingle(sql, parameters); return result; } 它位于类中的方法内部,但这不重要。QuerySingle据说会返回动态类型,但我以前从未使用过它。当我调试这段代码时,它返回的结果是这样的 {{DapperRow, Tcode = 'eee

我的代码如下所示

 using (IDbConnection cnn = new SqlConnection(GetConnectionString()))
{
    var result = cnn.QuerySingle(sql, parameters);

    return result;
}
它位于类中的方法内部,但这不重要。QuerySingle据说会返回动态类型,但我以前从未使用过它。当我调试这段代码时,它返回的结果是这样的

{{DapperRow, Tcode = 'eeeee', Hashedpw = 'NF886jMDl5imyMj0ThDIxA==', Salt = 'Z+HHq6Rt60FPnAf80Lg4Dg=='}}
我该怎么读呢?它们是键值对,因为其背后的逻辑不起作用,它不像列表或数组那样起作用。我完全迷路了,不知道这会带来什么。我只需要这些值,而不是dapperrow、tcode、hashedpw和salt。所以基本上,我需要的回报是

['eeeee', 'NF886jMDl5imyMj0ThDIxA==','Z+HHq6Rt60FPnAf80Lg4Dg=='] 

有人能帮我吗?

目前您正在使用弱类型的
QuerySingle()
,它将始终返回键值对结果。如果只想检索值,应该像这样使用强类型
QuerySingle()

var result= connection.QuerySingle<TYPE>(sql, parameters);
如果您返回多个结果,那么您可以在代码中使用它,例如
QuerySingle
,显然,您必须这样使用
QuerySingle()

希望这将对您有所帮助。

请查看此以获取有关QuerySingle的帮助

如果您创建另一个类,类似这样的内容

public class TestClass
{
    public string Tcode { get; set; }
    public string Hashedpw { get; set; }
    public string Salt { get; set; }
}
var result = cnn.QuerySingle<TestClass>(sql, parameters);
。。。把你的QuerySingle呼叫改成这样

public class TestClass
{
    public string Tcode { get; set; }
    public string Hashedpw { get; set; }
    public string Salt { get; set; }
}
var result = cnn.QuerySingle<TestClass>(sql, parameters);
。。。将导致
eeeee
出现在调试窗口之外


这有帮助吗?

我该如何将其放入列表或字符串数组?@coder如果返回的是一列字符串和多行,则:
var result=connection.Query(sql,parameters).AsList();如果要返回多个列,则需要提供更多context@coder例如,另一种惰性的方法是“值元组”:
var row=connection.QuerySingle(sql,parameters)-然后看看
row.tcode
row.pwhash
等等(这个例子是一行多列),我确实从一行返回了多个列。我调用的函数包含一个tcode,我在数据库中查找它。找到后,函数应返回一个列表或数组等,以及tcode、哈希密码和salt。@编码器如果只获取一行,为什么需要列表/数组/etc?再次:请参见上面的值元组示例,或者Thunder的答案(这使得So_oP对
的使用更加明确)。列表/数组=多行。单行应该是一个具有多个属性的结构或类…省略号太多。。。你介意。。。删除其中一些。。。?或者更好的是,所有这些……我使用了一些类似的东西,正如在对不同答案的评论中所建议的那样。非常感谢。