C# (.NET 2.0) で指定された TableAdaptor および SqlDataAdaptor の SQL Command オブジェクトを取得するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/102623

質問

アプリケーション用の汎用エラー処理/ログクラスを作成しています。目標は、例外情報、クラスと関数 (およびパラメーター) に関する情報、および関連する場合は、 System.Data.SqlClient.SqlCommand 物体。

引き継ぎ対応できるようにしたい SqlCommands, TableAdaptors, 、 そして SqlDataAdaptors.

私はリフレクションを使用するのが初めてで、これが可能であることは知っていますが、どうすればよいのかわかりません。お知らせ下さい。

役に立ちましたか?

解決

これがあなたの話していることですか?

SqlDataAdapter da = new SqlDataAdapter();
var cmd1 = ((IDbDataAdapter)da).DeleteCommand;
var cmd2 = ((IDbDataAdapter)da).UpdateCommand;
var cmd3 = ((IDbDataAdapter)da).SelectCommand;
var cmd4 = ((IDbDataAdapter)da).InsertCommand;

SqlDataAdapter は、すべての CRUD コマンドのゲッター/セッターを備えた IDbDataAdapter を実装します。SqlDataAdapter はこれらを明示的に実装するため、最初にインターフェイスにキャストしない限り、クラスの署名には表示されません。反省は必要ありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top