问题描述
我只是想知道是否可以在.Net Core脚本中使用Npgsql返回单行。
我一直在像下面这样使用Read方法
NpgsqlCommand command = new NpgsqlCommand (
" select col01,col02,col03 from table ",dbconnection
);
var result = command.ExecuteReader();
while(result.Read()) {
var varCol01 = result["col01"];
var varCol02 = result["col02"];
}
对于单行来说这似乎有点多余,因为我必须手动退出while。
解决方法
每次调用NpgsqlDataReader.Read
时,您正在读取另一行-因此您的代码示例似乎不太适合单行方案...
如果知道只有一行,为什么不这样做:
var reader = command.ExecuteReader();
reader.Read(); // You can do a Debug.Assert to make sure the result of this is true
var (col1,col2) = (result["col01"],result["col02"]);