@ -1,4 +1,8 @@
using Prism.DryIoc ;
using System.Linq ;
using System.Reflection ;
using System ;
using System.Windows ;
using Prism.DryIoc ;
using Prism.Events ;
using Prism.Ioc ;
using Prism.Services.Dialogs ;
@ -9,6 +13,7 @@ using SWS.Commons;
using SWS.Service ;
using SWS.WPF.ViewModels ;
using SWS.WPF.Views ;
using Telerik.Windows.Controls ;
using Unity ;
namespace SWS.CAD
{
@ -17,31 +22,80 @@ namespace SWS.CAD
public static void RegisterTypes ( )
{
GlobalObject . container = new UnityContainer ( ) ;
GlobalObject . container . RegisterSingleton < IEventAggregator , EventAggregator > ( ) ;
try
{
GlobalObject . container = new UnityContainer ( ) ;
// 启用诊断
GlobalObject . container . AddExtension ( new Diagnostic ( ) ) ;
GlobalObject . container . RegisterSingleton < IEventAggregator , EventAggregator > ( ) ;
GlobalObject . container . RegisterSingleton < HttpService > ( ) ;
GlobalObject . container . RegisterSingleton < ConfigService > ( ) ;
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 . container . RegisterSingleton < PDBService > ( ) ;
GlobalObject . container . RegisterSingleton < RelService > ( ) ;
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 . container . RegisterSingleton < PDBService > ( ) ;
GlobalObject . container . RegisterSingleton < RelService > ( ) ;
GlobalObject . _prismContainer = new DryIocContainerExtension ( ) ;
GlobalObject . _prismContainer . Register < IDialogService , DialogService > ( ) ;
GlobalObject . _prismContainer . Register < IDialogWindow , Views . Dialog . 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 < SWS . WPF . Views . DialogSignalManagement , SWS . WPF . ViewModels . DialogSignalManagementViewModel > ( ) ;
GlobalObject . _prismContainer . RegisterDialog < DialogAllOutputSignal , DialogAllOutputSignalViewModel > ( ) ;
GlobalObject . _prismContainer . RegisterDialog < DialogAssociatedSignal , DialogAssociatedSignalViewModel > ( ) ;
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 > ( ) ;
GlobalObject . _prismContainer . RegisterDialog < DialogSignalPredistribution , DialogSignalPredistributionViewModel > ( ) ;
GlobalObject . _prismContainer . RegisterDialog < DialogSectionBox , DialogSectionBoxViewModel > ( ) ;
}
catch ( System . Exception ex )
{
// 记录异常详细信息
MessageBox . Show ( $"启动时发生错误: {ex.ToString()}" , "错误" , MessageBoxButton . OK , MessageBoxImage . Error ) ;
}
GlobalObject . _prismContainer = new DryIocContainerExtension ( ) ;
GlobalObject . _prismContainer . Register < IDialogService , DialogService > ( ) ;
GlobalObject . _prismContainer . Register < IDialogWindow , Views . Dialog . CustomDialogWindow > ( ) ;
@ -79,5 +133,7 @@ namespace SWS.CAD
GlobalObject . _prismContainer . RegisterDialog < DialogSignalPredistribution , DialogSignalPredistributionViewModel > ( ) ;
GlobalObject . _prismContainer . RegisterDialog < DialogSectionBox , DialogSectionBoxViewModel > ( ) ;
}
}
}