2025-08-15 16:34:31 +08:00

83 lines
5.2 KiB
C#

using Prism.Container.DryIoc;
using Prism.Dialogs;
using Prism.Events;
using Prism.Ioc;
using SWS.CAD.Helper;
using SWS.CAD.Models.NoEntity;
using SWS.CAD.Services;
using SWS.CAD.ViewModels;
using SWS.CAD.Views;
using SWS.CAD.Views.Dialog;
using SWS.CAD.Views.SignalManagementViews;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Unity;
namespace SWS.CAD
{
public class Start
{
public static void RegisterTypes()
{
GlobalObject.container = new UnityContainer();
GlobalObject.container.RegisterSingleton<IEventAggregator, EventAggregator>();
GlobalObject.container.RegisterSingleton<HttpService>();
GlobalObject.container.RegisterSingleton<ConfigService>();
GlobalObject.container.RegisterSingleton<AnnexesService>();
GlobalObject.container.RegisterSingleton<DataItemService>();
GlobalObject.container.RegisterSingleton<DrawingServce>();
GlobalObject.container.RegisterSingleton<LoginService>();
GlobalObject.container.RegisterSingleton<NotificationService>();
GlobalObject.container.RegisterSingleton<ObjectTypeService>();
GlobalObject.container.RegisterSingleton<ProjectService>();
GlobalObject.container.RegisterSingleton<TemplateFileService>();
GlobalObject.container.RegisterSingleton<UserService>();
GlobalObject.container.RegisterSingleton<EnginedataService>();
GlobalObject.container.RegisterSingleton<ResourceService>();
GlobalObject.container.RegisterSingleton<DrawingCatalogueService>();
GlobalObject.container.RegisterSingleton<WireGroupService>();
GlobalObject.container.RegisterSingleton<IOModuleService>();
GlobalObject._prismContainer = new DryIocContainerExtension();
GlobalObject._prismContainer.Register<IDialogService, DialogService>();
GlobalObject._prismContainer.Register<IDialogWindow, CustomDialogWindow>();
//后者类似于一个容器。给所有需要的dialog所用
GlobalObject._prismContainer.RegisterDialog<NewDrawing, NewDrawingViewModel>();
GlobalObject._prismContainer.RegisterDialog<Dialog2Select, Dialog2SelectViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogUnitSelect, DialogUnitSelectViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogInput, DialogInputViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogTagSelect, DialogTagSelectViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogNewTagNumber, DialogNewTagNumberViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogParallelCable, DialogParallelCableViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogPreCheckIn, DialogPreCheckInViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogDrawingCatalogue, DialogDrawingCatalogueViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogCheckInRecord, DialogCheckInRecordViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogPublishRecord, DialogPublishRecordViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogSignalManagement, DialogSignalManagementViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogOperateRecord, DialogOperateRecordViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogPropertyHistory, DialogPropertyHistoryViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogSignalNotice, DialogSignalNoticeViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogSignalPropertyhisAndLogs, DialogSignalPropertyhisAndLogsViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogSignalSelect, DialogSignalSelectViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogIODistribution, DialogIODistributionViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogNewPositional, DialogNewPositionalViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogNewStrip, DialogNewStripViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogCablePreAssignPreview, DialogCablePreAssignPreviewViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogCablePreAssignResult, DialogCablePreAssignResultViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogNewComponent, DialogNewComponentViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogCableConfig, DialogCableConfigViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogBusbarManagement, DialogBusbarManagementViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogChannelMigration, DialogChannelMigrationViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogCableConnection, DialogCableConnectionViewModel>();
GlobalObject._prismContainer.RegisterDialog<DialogCableConnection_NewStrip, DialogCableConnection_NewStripViewModel>();
}
}
}