DbConfiguration.SetDatabaseLogFormatter メソッド
[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]
DbConfiguration から派生したクラスのコンストラクターからこのメソッドを呼び出して、Log で使用する DatabaseLogFormatter 型用にファクトリを設定します。
名前空間: System.Data.Entity
アセンブリ: EntityFramework (EntityFramework.dll 内)
構文
'宣言
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
Protected Friend Sub SetDatabaseLogFormatter ( _
logFormatterFactory As Func(Of DbContext, Action(Of String), DatabaseLogFormatter) _
)
'使用
Dim logFormatterFactory As Func(Of DbContext, Action(Of String), DatabaseLogFormatter)
Me.SetDatabaseLogFormatter(logFormatterFactory)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
protected internal void SetDatabaseLogFormatter(
Func<DbContext, Action<string>, DatabaseLogFormatter> logFormatterFactory
)
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
protected public:
void SetDatabaseLogFormatter(
Func<DbContext^, Action<String^>^, DatabaseLogFormatter^>^ logFormatterFactory
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
member SetDatabaseLogFormatter :
logFormatterFactory:Func<DbContext, Action<string>, DatabaseLogFormatter> -> unit
function SetDatabaseLogFormatter(
logFormatterFactory : Func<DbContext, Action<String>, DatabaseLogFormatter>
)
パラメーター
- logFormatterFactory
型 : System.Func<DbContext, Action<String>, DatabaseLogFormatter>
フォーマッタのインスタンスを作成するデリゲート。
解説
このメソッドで使用するフォーマッタの型を設定すると、Log の使用時にコマンドがログに記録される方法が変更されます。 また、どのコマンドもログに記録される前に、TextWriter インスタンスを Log に設定する必要もあります。 ログ/傍受のさらに低レベルの制御については、「IDbCommandInterceptor」と「DbInterception」を参照してください。 このメソッドは、Entity Framework に構成を追加するための便利で検出可能な方法として用意されています。 内部的には、AddDependencyResolver を使用して Func<TResult> の適切なリゾルバーを追加する場合と同じように機能します。 つまり、必要に応じて、カスタム リゾルバーまたは制御の反転コンテナーによってサポートされるリゾルバーを使用して同じ機能を実現できます。