4

Ninjectでデコレータを使用して責任の連鎖を宣言したいと思います。Ninjectでデコレータを使用して責任の連鎖を宣言するにはどうすればよいですか?

誰も以前に行ったことはありますか?

ありがとうございました。これはあなたにデコレータを取得する必要があります

LoggingEmailSending(IEmailSender sender) 

Bind<IEmailSender>().To<LoggingEmailSender>(); 
Bind<IEmailSender>().To<SmtpClientEmailSender>().ForMembersOf<LoggingEmailSender>(); 

LoggingEmailSenderクラスのようなコンストラクタ何かを持っているでしょう:私が正しく質問を理解してると仮定

+1

私は、責任とデコレータのチェーンが完全に異なるデザインパターンであることを指摘したいと思います。おそらく、この質問に答えが得られないのでしょうか? –

答えて

13

Bind<IEmailSender>().To<LoggingEmailSender>(); 
Bind<IEmailSender>().To<SmtpClientEmailSender>().WhenInjectedInto<LoggingEmailSender>(); 

はちょうどこのに自分自身を実行し、ForMembersOfがninject 2.0

で削除されているようにそれはそれを行う方法がわかりました
2

は、1つのアプローチは、このようなものです簡単に言えば、属性を使用しなければ、ほんの一人のコンストラクタに限られていることを覚えておいてください。あなたは、次の新しい構文によって、これを達成することができ、新たなninject 2.0構文で

関連する問題