本文整理汇总了C#中IPluginFinder.RegisterCreatePluginsCallBack方法的典型用法代码示例。如果您正苦于以下问题:C# IPluginFinder.RegisterCreatePluginsCallBack方法的具体用法?C# IPluginFinder.RegisterCreatePluginsCallBack怎么用?C# IPluginFinder.RegisterCreatePluginsCallBack使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPluginFinder
的用法示例。
在下文中一共展示了IPluginFinder.RegisterCreatePluginsCallBack方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FormsManager
public FormsManager(IPluginFinder pluginFinder, Func<IViewNavigator> regionNavigatorSupplier, FormExceptionHandler formExceptionHandler)
{
_RegionNavigatorSupplier = regionNavigatorSupplier;
_FormExceptionHandler = formExceptionHandler;
pluginFinder.RegisterCreatePluginsCallBack<IFormsProvider>(RegisterForms);
}
示例2: StoreConnectionStringProvider
public StoreConnectionStringProvider(IPluginFinder pluginFinder)
{
pluginFinder.RegisterCreatePluginsCallBack<IDataStoreRegistration>(registrations =>
{
_StoreConnectionNames = registrations.ToDictionary(r => r.Type, r => r.ConnectionDetails);
});
}
示例3: MenuNavigator
public MenuNavigator(IInfrastructureEventAggregator eventAggregator, IPluginFinder pluginFinder, IFormsManager formsManager)
{
_UnattachedMenus = new HashSet<KeyValuePair<string, IMenu>>();
_FormsManager = formsManager;
pluginFinder.RegisterCreatePluginsCallBack<IEndPointProvider>(ProcessPlugins);
eventAggregator.Subscribe<IApplicationInitializedEvent>((args) => ApplicationInitialized());
}
示例4: PluginDataStoresManager
public PluginDataStoresManager(IPluginFinder plugInFinder, Func<Type, IDataStore> storeSupplier, Func<IModelViewStoresManager> modelViewStoresManagerFactory)
: base(storeSupplier, modelViewStoresManagerFactory)
{
plugInFinder.RegisterCreatePluginsCallBack<IDataStoreRegistration>(
(instances) =>
{
DataStoreTypes = new List<Type>(instances.Select(plugIn => plugIn.Type));
});
}
示例5: EndPointInitialization
public EndPointInitialization(IPluginFinder pluginFinder)
{
pluginFinder.RegisterCreatePluginsCallBack<IEndPointValidation>(plugins =>
{
var validators = plugins
.Where(p => (plugins.Count() == 1 || p.GetType() != typeof(NoEndPointValidation)));
if (validators.Count() != 1)
{
throw new InvalidOperationException("Exactly one IEndPointValidation must be defined per application");
}
_Validation = validators.First();
TryInitialize();
});
pluginFinder.RegisterCreatePluginsCallBack<IEndPointProvider>(plugins =>
{
_Providers = plugins;
TryInitialize();
});
}