0
最近質問した2番目のテーブルからデータを取得できませんでした。IDataReader
から値を取得しようとしています。誰かが私にそれらを手に入れる方法を見つけるのを手伝ってもらえますか?ここで私はこれまで持っているものです。複数のテーブルを持つIDataReaderから値を取得する方法
using (SqlCommand command = new SqlCommand(@"SELECT name, value from Company.dbo.A;SELECT sum(value) from Company.dbo.A ", connection))
{
command.Notification = null;
SqlDependency dependency = new SqlDependency(command);
dependency.OnChange += new OnChangeEventHandler(dependency_OnChange);
if (connection.State == ConnectionState.Closed)
connection.Open();
using (var reader = command.ExecuteReader())
return reader.Cast<IDataRecord>()
.Select(x => new LocationInfo()
{
Names = x.GetString(0),
Values = Math.Round(x.GetDouble(1), 2).ToString("#,##0.00"),
ValuesDouble=x.GetDouble(1),
SumVol=x.GetDouble(2)//this line does not work(index out of bounds error)
}).ToList();
}
したがって、あなたは、私がのためにpublic double SumVol { get; set; }
を作成しているSUM(value) into SumVol
である第二のSQLコマンドを得るのですか?
ありがとうあなたの答えは、2つのsqlコマンドから値を取得する方法はありますか?私のクエリはそれよりはるかに複雑であるからです。事前にありがとうございます – MVCNoob
私は最初の段落であなたに言った、 'reader.NextResult()'を使用して2番目の結果セットに切り替え、結果を返す前にリストの値を更新します。 –
私はまだ私がどのようにreader.NextResult()を使用できるか理解していません。私はreaderを使って2を作る必要がありますか?reader.NextResult()をどこに置くのですか?申し訳ありませんが、上記の文脈ではreader.NextResult()の使用例を教えてください。ご注意いただきありがとうございますbtw :) – MVCNoob