Я думаю, что обратные функции как strrchr () помогли бы Вам соответствовать концу строки самое быстрое.
Ответ от Нейта:
Мульти-разрешение (через
GetAll
) в настоящее время не полиморфен. Это значит что он будет рассматривать только привязки из указанного вами интерфейса. Если вы сделаете это:kernel.Bind
() .To (); kernel.Bind () .To (); kernel.Bind () .To (); А затем:
kernel.GetAll
(); Он вернет 3 предмета. Однако даже если
IWorkerA
,IWorkerB
иIWorkerC
реализуетIWorker
, Ninject не будет смотреть на привязки изIWorkerA
наWorkerA
, когда вы спросите дляIWorker
.
См .:
http://groups.google.com/group/ninject/browse_thread/thread/7b6afa06099bc97a#
Если у вас нет полиморфной ситуации, как описано в потоке, на который ссылается ответ Ромена , то у вас не должно быть никаких проблем, пока вы используете Ninject 2. Ninject 1.x не включает такого рода поддержку.