本文整理汇总了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 );
}
示例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));
});
}