0

私は SQL Server を初めて使用するので、私の質問が些細なことのように思われる場合は申し訳ありませんが、これに対する適切な回答、または少なくとも利用できる回答を見つけることができませんでした。

私の問題は、後で別のデータベースにエントリを挿入するために使用するテーブル GUID を取得するために sql datareader を使用する必要があることです。データリーダーを閉じると、その中のすべての情報が破棄されます。データリーダーの値を返す方法を見つけることができなかったので、後でコードで呼び出すことができます。後で呼び出される datareader の値をどのように返したり保存したりしますか?

4

3 に答える 3

3

データ リーダーを返すのではなく、すべての値をコレクションに追加します。ここではList<T>or T[](配列) が必要です。これには、クエリの結果をモデル化するオブジェクトが含まれている必要があります。Guid のみを返す場合は、 or になりList<Guid>ますGuid[]

一般に、すべてのデータベース インタラクションは、アプリケーションの 1 つのレイヤーに配置する必要があります。その時点で、クエリ結果を逆シリアル化する必要があります。コードの他の場所では、まだ逆シリアル化が保留中のクエリ結果ではなく、ネイティブ C# 型を処理する必要があります。ここでは通常、クエリを作成するために必要なデータを受け取り、クエリ結果をモデル化するオブジェクトまたはオブジェクトのコレクションを返すメソッドが必要です。

于 2013-07-02T17:05:00.140 に答える