示例#1
0
        public static Configure ForUnilib(this Configure configuration)
        {
            ISessionFactory sessionFactory = Fluently.Configure()
               .Database(MsSqlConfiguration.MsSql2008
                             .ConnectionString(@"Data Source=.\SqlExpress2008;Initial Catalog=Unilib;Integrated Security=True")
                             .ShowSql())
               .Mappings(m => m.FluentMappings.AddFromAssemblyOf<IEntity>())
               .ExposeConfiguration((config) => { new SchemaUpdate(config); })
               .BuildSessionFactory();

            ContainerBuilder builder = new ContainerBuilder();
            builder.RegisterInstance<ISessionFactory>(sessionFactory);
            builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>))
                .WithProperty("SessionFactory", sessionFactory);
            var container = builder.Build();

            return configuration.AutofacBuilder(container);
        }
 /// <summary>
 /// Use the Autofac builder passing in a preconfigured container to be used by nServiceBus.
 /// </summary>
 /// <param name="config">The configuration context.</param>
 /// <param name="container">The preconfigured container to be used.</param>
 /// <returns>The configuration context.</returns>
 public static Configure AutofacBuilder(this Configure config, IContainer container)
 {
     return config.AutofacBuilder(container as ILifetimeScope);
 }
 /// <summary>
 /// Use the Autofac builder.
 /// </summary>
 /// <param name="config">The configuration context.</param>
 /// <returns>The configuration context.</returns>
 public static Configure AutofacBuilder(this Configure config)
 {
     return config.AutofacBuilder(null);
 }