本文整理汇总了C#中IServiceLocator.RegisterTypeIfNotYetRegistered方法的典型用法代码示例。如果您正苦于以下问题:C# IServiceLocator.RegisterTypeIfNotYetRegistered方法的具体用法?C# IServiceLocator.RegisterTypeIfNotYetRegistered怎么用?C# IServiceLocator.RegisterTypeIfNotYetRegistered使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IServiceLocator
的用法示例。
在下文中一共展示了IServiceLocator.RegisterTypeIfNotYetRegistered方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Initialize
/// <summary>
/// Initializes the specified service locator.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
public void Initialize(IServiceLocator serviceLocator)
{
Argument.IsNotNull(() => serviceLocator);
serviceLocator.RegisterTypeIfNotYetRegistered<IConnectionStringManager, ConnectionStringManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IContextFactory, ContextFactory>();
}
示例2: RegisterServices
/// <summary>
/// Registers the services in the specified <see cref="IServiceLocator" />.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
/// <exception cref="ArgumentNullException">The <paramref name="serviceLocator"/> is <c>null</c>.</exception>
public static void RegisterServices(IServiceLocator serviceLocator)
{
Argument.IsNotNull(() => serviceLocator);
#if !NET
serviceLocator.RegisterTypeIfNotYetRegistered<IFrameworkElementLoadedManager, FrameworkElementLoadedManager>();
#endif
serviceLocator.RegisterTypeIfNotYetRegistered<IViewManager, ViewManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelManager, ViewModelManager>();
ViewModelServiceHelper.RegisterDefaultViewModelServices(serviceLocator);
}
示例3: Initialize
/// <summary>
/// Initializes the specified service locator.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
public void Initialize(IServiceLocator serviceLocator)
{
Argument.IsNotNull(() => serviceLocator);
serviceLocator.RegisterTypeIfNotYetRegistered<IDataContextSubscriptionService, DataContextSubscriptionService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ICommandManager, CommandManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewLoadManager, ViewLoadManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelWrapperService, ViewModelWrapperService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewManager, ViewManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelManager, ViewModelManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IAutoCompletionService, AutoCompletionService>();
#if !XAMARIN && !WIN80
serviceLocator.RegisterTypeIfNotYetRegistered<IInteractivityManager, InteractivityManager>();
#endif
ViewModelServiceHelper.RegisterDefaultViewModelServices(serviceLocator);
// Don't use property, we cannot trust the cached property here yet in Visual Studio
if (CatelEnvironment.GetIsInDesignMode())
{
foreach (var assembly in AssemblyHelper.GetLoadedAssemblies())
{
var attributes = assembly.GetCustomAttributesEx(typeof (DesignTimeCodeAttribute));
foreach (var attribute in attributes)
{
// No need to do anything
}
}
}
}
示例4: RegisterServices
/// <summary>
/// Registers the services in the specified <see cref="IServiceLocator" />.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
/// <exception cref="ArgumentNullException">The <paramref name="serviceLocator"/> is <c>null</c>.</exception>
public static void RegisterServices(IServiceLocator serviceLocator)
{
Argument.IsNotNull(() => serviceLocator);
serviceLocator.RegisterTypeIfNotYetRegistered<IBootstrapperTaskFactory, BootstrapperTaskFactory>();
serviceLocator.RegisterType<RegionAdapterMappings, RegionAdapterMappings>();
}
示例5: Initialize
/// <summary>
/// Initializes the specified service locator.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
public void Initialize(IServiceLocator serviceLocator)
{
Argument.IsNotNull(() => serviceLocator);
serviceLocator.RegisterTypeIfNotYetRegistered<IBootstrapperTaskFactory, BootstrapperTaskFactory>();
serviceLocator.RegisterType<RegionAdapterMappings, RegionAdapterMappings>();
serviceLocator.RegisterType<IUICompositionService, UICompositionService>();
}
示例6: InstanceProvider
/// <summary>
/// Initializes a new instance of the <see cref="InstanceProvider" /> class.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
/// <param name="contractType">Type of the contract.</param>
/// <param name="serviceType">Type of the service.</param>
/// <param name="tag">The tag.</param>
/// <param name="registrationType">Type of the registration.</param>
public InstanceProvider(IServiceLocator serviceLocator, Type contractType, Type serviceType, object tag = null, RegistrationType registrationType = RegistrationType.Singleton)
{
Argument.IsNotNull("serviceLocator", serviceLocator);
Argument.IsNotNull("contractType", contractType);
Argument.IsNotNull("serviceType", serviceType);
_serviceLocator = serviceLocator;
_contractType = contractType;
_log.Debug("Register the contract type '{0}' for service type '{1}'", _contractType.Name, serviceType.Name);
_serviceLocator.RegisterTypeIfNotYetRegistered(_contractType, serviceType, tag, registrationType);
}
示例7: Initialize
/// <summary>
/// Initializes the specified service locator.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
public void Initialize(IServiceLocator serviceLocator)
{
Argument.IsNotNull("serviceLocator", serviceLocator);
serviceLocator.RegisterTypeIfNotYetRegistered<IDataContextSubscriptionService, DataContextSubscriptionService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ICommandManager, CommandManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewLoadManager, ViewLoadManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelWrapperService, ViewModelWrapperService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewManager, ViewManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelManager, ViewModelManager>();
serviceLocator.RegisterTypeIfNotYetRegistered<IAutoCompletionService, AutoCompletionService>();
#if !XAMARIN && !WIN80
serviceLocator.RegisterTypeIfNotYetRegistered<IInteractivityManager, InteractivityManager>();
#endif
ViewModelServiceHelper.RegisterDefaultViewModelServices(serviceLocator);
DesignTimeHelper.InitializeDesignTime();
}
示例8: RegisterServices
/// <summary>
/// Registers the services in the specified <see cref="IServiceLocator" />.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
/// <exception cref="ArgumentNullException">The <paramref name="serviceLocator"/> is <c>null</c>.</exception>
public static void RegisterServices(IServiceLocator serviceLocator)
{
Argument.IsNotNull(() => serviceLocator);
serviceLocator.RegisterInstance<IExceptionService>(ExceptionService.Default);
serviceLocator.RegisterInstance<IMessageMediator>(MessageMediator.Default);
serviceLocator.RegisterTypeIfNotYetRegistered<IValidatorProvider, AttributeValidatorProvider>();
#if NET
serviceLocator.RegisterType<IBinarySerializer, BinarySerializer>();
#endif
serviceLocator.RegisterType<IDataContractSerializerFactory, DataContractSerializerFactory>();
serviceLocator.RegisterType<IXmlSerializer, XmlSerializer>();
serviceLocator.RegisterType<IXmlNamespaceManager, XmlNamespaceManager>();
serviceLocator.RegisterType<ISerializationManager, SerializationManager>();
serviceLocator.RegisterType<IModelEqualityComparer, ModelEqualityComparer>();
}
示例9: RegisterDefaultViewModelServices
/// <summary>
/// Registers the default view model services.
/// </summary>
/// <param name="serviceLocator">The service locator to add the services to.</param>
/// <exception cref="ArgumentNullException">The <paramref name="serviceLocator"/> is <c>null</c>.</exception>
public static void RegisterDefaultViewModelServices(IServiceLocator serviceLocator)
{
Argument.IsNotNull("serviceLocator", serviceLocator);
try
{
Log.Debug("Registering default service implementations for IoC container");
if (!serviceLocator.IsTypeRegistered<IMessageMediator>())
{
serviceLocator.RegisterInstance(MessageMediator.Default);
}
if (!serviceLocator.IsTypeRegistered<ExceptionHandling.IExceptionService>())
{
serviceLocator.RegisterInstance(ExceptionHandling.ExceptionService.Default);
}
serviceLocator.RegisterTypeIfNotYetRegistered<IViewPropertySelector, FastViewPropertySelector>();
serviceLocator.RegisterTypeIfNotYetRegistered<IStateService, StateService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IDispatcherService, DispatcherService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IMessageService, MessageService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IUrlLocator, UrlLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewLocator, ViewLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelLocator, ViewModelLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelFactory, ViewModelFactory>();
serviceLocator.RegisterTypeIfNotYetRegistered<INavigationService, NavigationService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IPleaseWaitService, PleaseWaitService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IAccelerometerService, AccelerometerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ILocationService, LocationService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IVibrateService, VibrateService>();
#if !NET && !SL5
serviceLocator.RegisterTypeIfNotYetRegistered<ICameraService, CameraService>();
#endif
#if !XAMARIN
// TODO: Add support in xamarin
serviceLocator.RegisterTypeIfNotYetRegistered<ISchedulerService, SchedulerService>();
#endif
#if NET
serviceLocator.RegisterTypeIfNotYetRegistered<IProcessService, ProcessService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISelectDirectoryService, SelectDirectoryService>();
#endif
#if NET || SL5
serviceLocator.RegisterTypeIfNotYetRegistered<IOpenFileService, OpenFileService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISaveFileService, SaveFileService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IUIVisualizerService, UIVisualizerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewExportService, ViewExportService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IStartUpInfoProvider, StartUpInfoProvider>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISplashScreenService, SplashScreenService>(RegistrationType.Transient);
#endif
#if (WINDOWS_PHONE && SILVERLIGHT) || XAMARIN
serviceLocator.RegisterTypeIfNotYetRegistered<IPhoneService, PhoneService>();
#endif
Log.Debug("Registered default service implementations for IoC container");
}
catch (Exception ex)
{
Log.Error(ex, "Failed to configure IoC container");
throw new Exception(Catel.ResourceHelper.GetString("FailedToConfigureIoCContainer"), ex);
}
}
示例10: RegisterDefaultViewModelServices
/// <summary>
/// Registers the default view model services.
/// </summary>
/// <param name="serviceLocator">The service locator to add the services to.</param>
/// <exception cref="ArgumentNullException">The <paramref name="serviceLocator"/> is <c>null</c>.</exception>
public static void RegisterDefaultViewModelServices(IServiceLocator serviceLocator)
{
Argument.IsNotNull("serviceLocator", serviceLocator);
try
{
Log.Debug("Registering default service implementations for IoC container");
#if NETFX_CORE
if (!serviceLocator.IsTypeRegistered<IMessageMediator>())
{
serviceLocator.RegisterInstance(MessageMediator.Default);
}
if (!serviceLocator.IsTypeRegistered<ExceptionHandling.IExceptionService>())
{
serviceLocator.RegisterInstance(ExceptionHandling.ExceptionService.Default);
}
// NOTE: Must be in this specific order
serviceLocator.RegisterTypeIfNotYetRegistered<IDependencyPropertySelector, DependencyPropertySelector>();
serviceLocator.RegisterTypeIfNotYetRegistered<IDispatcherService, DispatcherService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IMessageService, MessageService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IMessageService, MessageService>();
serviceLocator.RegisterTypeIfNotYetRegistered<INavigationService, NavigationService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IPleaseWaitService, PleaseWaitService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IProcessService, ProcessService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISchedulerService, SchedulerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IUrlLocator, UrlLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewLocator, ViewLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelLocator, ViewModelLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelFactory, ViewModelFactory>();
#elif WINDOWS_PHONE
if (!serviceLocator.IsTypeRegistered<IMessageMediator>())
{
serviceLocator.RegisterInstance(MessageMediator.Default);
}
if (!serviceLocator.IsTypeRegistered<ExceptionHandling.IExceptionService>())
{
serviceLocator.RegisterInstance(ExceptionHandling.ExceptionService.Default);
}
// NOTE: Must be in this specific order
serviceLocator.RegisterTypeIfNotYetRegistered<IDependencyPropertySelector, DependencyPropertySelector>();
serviceLocator.RegisterTypeIfNotYetRegistered<IDispatcherService, DispatcherService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IMessageService, MessageService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ILocationService, LocationService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IMessageService, MessageService>();
serviceLocator.RegisterTypeIfNotYetRegistered<INavigationService, NavigationService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IPleaseWaitService, PleaseWaitService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISchedulerService, SchedulerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IVibrateService, VibrateService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IUrlLocator, UrlLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewLocator, ViewLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelLocator, ViewModelLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelFactory, ViewModelFactory>();
serviceLocator.RegisterTypeIfNotYetRegistered<IAccelerometerService, AccelerometerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ICameraService, CameraService>();
#elif SILVERLIGHT
if (!serviceLocator.IsTypeRegistered<IMessageMediator>())
{
serviceLocator.RegisterInstance(MessageMediator.Default);
}
if (!serviceLocator.IsTypeRegistered<ExceptionHandling.IExceptionService>())
{
serviceLocator.RegisterInstance(ExceptionHandling.ExceptionService.Default);
}
// NOTE: Must be in this specific order
serviceLocator.RegisterTypeIfNotYetRegistered<IDependencyPropertySelector, DependencyPropertySelector>();
serviceLocator.RegisterTypeIfNotYetRegistered<IDispatcherService, DispatcherService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IMessageService, MessageService>();
serviceLocator.RegisterTypeIfNotYetRegistered<INavigationService, NavigationService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IOpenFileService, OpenFileService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IPleaseWaitService, PleaseWaitService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISaveFileService, SaveFileService>();
serviceLocator.RegisterTypeIfNotYetRegistered<ISchedulerService, SchedulerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IUIVisualizerService, UIVisualizerService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IUrlLocator, UrlLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewLocator, ViewLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewExportService, ViewExportService>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelLocator, ViewModelLocator>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewModelFactory, ViewModelFactory>();
serviceLocator.RegisterTypeIfNotYetRegistered<IViewExportService, ViewExportService>();
#else // WPF
if (!serviceLocator.IsTypeRegistered<IMessageMediator>())
{
serviceLocator.RegisterInstance(MessageMediator.Default);
}
if (!serviceLocator.IsTypeRegistered<ExceptionHandling.IExceptionService>())
//.........这里部分代码省略.........