当前位置: 首页>>代码示例>>C#>>正文


C# IKernel.GetService方法代码示例

本文整理汇总了C#中IKernel.GetService方法的典型用法代码示例。如果您正苦于以下问题:C# IKernel.GetService方法的具体用法?C# IKernel.GetService怎么用?C# IKernel.GetService使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IKernel的用法示例。


在下文中一共展示了IKernel.GetService方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: RegisterServices

        /// <summary>
        /// Load your modules or register your services here!
        /// </summary>
        /// <param name="kernel">The kernel.</param>
        private static void RegisterServices( IKernel kernel )
        {
            string path = new Uri( Path.GetDirectoryName( typeof( NinjectWebCommon ).Assembly.CodeBase ) ?? "" ).LocalPath;
            string thisNamespace = typeof( NinjectWebCommon ).FullName.Split( new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries )[0]; // FRAGILE: ASSUME: All our code is in this namespace

            kernel.Bind( x => x
                .FromAssembliesInPath( path ) // Blows with "not marked as serializable": , a => a.FullName.StartsWith( assemblyPrefix ) )
                .Select( type => type.IsClass && !type.IsAbstract && type.FullName.StartsWith( thisNamespace ) ) // .SelectAllClasses() wires up everyone else's stuff too
                .BindDefaultInterface()
                .Configure( b => b.InRequestScope() )
            );

            // Add other bindings as necessary
            kernel.Rebind<IBetaSigmaPhiContext>().ToMethod( _ => (IBetaSigmaPhiContext)kernel.GetService( typeof(BetaSigmaPhiContext) ) );

            // Initialize the service locator
            ServiceLocator.Initialize( kernel.GetService );
        }
开发者ID:robrich,项目名称:BetaSigmaPhi,代码行数:22,代码来源:NinjectWebCommon.cs

示例2: RegisterServices

 /// <summary>
 /// Load your modules or register your services here!
 /// </summary>
 /// <param name="kernel">The kernel.</param>
 private static void RegisterServices(IKernel kernel)
 {
     kernel.Bind<IAutoContextFactory>()
         .To<AutoContextFactory>()
         .InSingletonScope()
         .OnActivation(x => x.AddAssemblyContaining<Post>().AddAssemblyContaining<HomeController>().AddEntitiesBasedOn<Entity>());
     kernel.Bind<DbContext>()
         .ToMethod(x => kernel.Get<IAutoContextFactory>().Context()).InRequestScope()
         .WithConstructorArgument("connectionString",
             x => WebConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
     kernel.Bind(
         x =>
             x.FromAssemblyContaining<PostController>()
                 .SelectAllClasses()
                 .InheritedFrom<Profile>()
                 .BindBase()
                 .Configure(c => c.InSingletonScope()));
     kernel.Bind<Highlighter>().ToSelf().InSingletonScope();
     Mapper.Initialize(x =>
     {
         var profiles =
             typeof (PostController).Assembly.GetTypes()
                 .Where(t => typeof (Profile).IsAssignableFrom(t))
                 .Union(typeof (Post).Assembly.GetTypes().Where(c => typeof (Profile).IsAssignableFrom(c)));
         foreach (var profile in profiles)
             x.AddProfile(kernel.GetService(profile) as Profile);
         x.ConstructServicesUsing(type => kernel.Get(type));
     });
 }
开发者ID:Grinderofl,项目名称:YANBE,代码行数:33,代码来源:NinjectWebCommon.cs


注:本文中的IKernel.GetService方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。