Конвертирование этого кода ninject 1.0 в ninject 2.0 - PullRequest
1 голос
/ 23 января 2011

Я пытаюсь следовать этому уроку http://damianm.com/tech/nhibernate-mvc-and-ninject/

но я сталкиваюсь с некоторыми проблемами, и я считаю, что они связаны с изменениями, которые были сделаны, когда они выпустили 2.0

Я никогда не использовал ninject 1.0, и я использовал ninject 2.0 меньше недели, поэтому мне трудно конвертировать.

Я думаю, что это

//1.0
    Bind<ISessionFactory>().ToProvider(new SessionFactoryProvider()).Using<SingletonBehavior>();

необходимо изменить на

//2.0
      Bind<ISessionFactory>().ToProvider(new SessionFactoryProvider()).InSingletonScope();

это

//1.0
     Bind<ISession>().ToProvider(new SessionProvider()).Using<OnePerRequestBehavior>();

до

//2.0
    Bind<ISession>().ToProvider(new SessionProvider()).InRequestScope();

Этих я не могу найти, какими они будут

// 1.0 -SimpleProvider
public class SessionProvider : SimpleProvider<ISession>
public class SessionFactoryProvider : SimpleProvider<ISessionFactory>

Выше я уже определил то, что нужно преобразовать.

Я также вижу это в одном из его классов репозитория

Bind<IRepository<Post>>().To<Repository<Post>>();

Я не знаю, для чего это на самом деле.

1 Ответ

2 голосов
/ 25 января 2011

SimpleProvider изменен на поставщика

public class SessionProvider : Provider<ISession>
public class SessionFactoryProvider : Provider<ISessionFactory>
...