结构调整,便于后续扩展

This commit is contained in:
akwkevin
2021-07-29 13:55:18 +08:00
parent 87be7a8021
commit 336249f313
121 changed files with 430 additions and 2165 deletions

View File

@@ -0,0 +1,82 @@
using AIStudio.Wpf.BaseDiagram.Services;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AIStudio.Wpf.BaseDiagram
{
/// <summary>
/// Simple service interface
/// </summary>
public interface IServiceProvider
{
IUIVisualizerService VisualizerService { get; }
IMessageBoxService MessageBoxService { get; }
//IDatabaseAccessService DatabaseAccessService { get; }
}
/// <summary>
/// Simple service locator
/// </summary>
public class ServiceProvider : IServiceProvider
{
private IUIVisualizerService visualizerService = new WPFUIVisualizerService();
private IMessageBoxService messageBoxService = new WPFMessageBoxService();
//private IDatabaseAccessService databaseAccessService = new DatabaseAccessService();
public IUIVisualizerService VisualizerService
{
get { return visualizerService; }
}
public IMessageBoxService MessageBoxService
{
get { return messageBoxService; }
}
//public IDatabaseAccessService DatabaseAccessService
//{
// get { return databaseAccessService; }
//}
}
/// <summary>
/// Simple service locator helper
/// </summary>
public class ApplicationServicesProvider
{
private static Lazy<ApplicationServicesProvider> instance = new Lazy<ApplicationServicesProvider>(() => new ApplicationServicesProvider());
private IServiceProvider serviceProvider = new ServiceProvider();
private ApplicationServicesProvider()
{
}
static ApplicationServicesProvider()
{
}
public void SetNewServiceProvider(IServiceProvider provider)
{
serviceProvider = provider;
}
public IServiceProvider Provider
{
get { return serviceProvider; }
}
public static ApplicationServicesProvider Instance
{
get { return instance.Value; }
}
}
}