1

私のプロジェクトでは、Silverlight 5.0 を LinqToSQl および WCF RIA サービスと共に使用しています。基礎となる SQL ステートメントのトレースをデバッグ モードで (Sql Server に) ログに記録する方法、またはコンソール ウィンドウまたはファイルにログを記録する方法を見つけようとしています。すべての CRUD 操作でこれが必要になります。

オンラインのすべてのサンプルは DataContext.Log プロパティを指していますが、その値は常に「Nothing」であり、プロジェクトのクライアント側からもアクセスできません。可能であれば、データの取得または保存に進む前に、実際の SQL ステートメントを表示する UserInterface を用意する予定です。これは主にデバッグ目的で使用されます。

クライアント エンドから基になる SQL ステートメントを表示する方法はありますか (ブレーク ポイントを使用し、イミディエイト ウィンドウで値を確認するなど)。

ありがとう。

4

1 に答える 1

0

DataContext によって実行された SQL ステートメントをログに記録する場合は、DataContext のプロパティ Log にTextWriterを割り当てる必要があります。

Null はDataContextのLogのデフォルト値であるため、コマンドのロギングは無効になっています。

SQL ステートメントをコンソールに記録するには、Console.Out をプロパティに割り当てます。

db.Log = Console.Out;

ログをファイルに書き込みたい場合は、StreamWriterをプロパティに割り当てることができます。

于 2013-01-30T10:57:02.133 に答える