diff --git a/DLL/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/DLL/Microsoft.Extensions.DependencyInjection.Abstractions.dll
deleted file mode 100644
index 0b3c8e9..0000000
Binary files a/DLL/Microsoft.Extensions.DependencyInjection.Abstractions.dll and /dev/null differ
diff --git a/DLL/Microsoft.Extensions.DependencyInjection.dll b/DLL/Microsoft.Extensions.DependencyInjection.dll
deleted file mode 100644
index c87ed43..0000000
Binary files a/DLL/Microsoft.Extensions.DependencyInjection.dll and /dev/null differ
diff --git a/DLL/Microsoft.Extensions.Logging.Abstractions.dll b/DLL/Microsoft.Extensions.Logging.Abstractions.dll
deleted file mode 100644
index 085f415..0000000
Binary files a/DLL/Microsoft.Extensions.Logging.Abstractions.dll and /dev/null differ
diff --git a/DLL/Microsoft.Extensions.Logging.dll b/DLL/Microsoft.Extensions.Logging.dll
deleted file mode 100644
index 75e0fbf..0000000
Binary files a/DLL/Microsoft.Extensions.Logging.dll and /dev/null differ
diff --git a/DLL/Microsoft.Extensions.Options.dll b/DLL/Microsoft.Extensions.Options.dll
deleted file mode 100644
index 69c35a5..0000000
Binary files a/DLL/Microsoft.Extensions.Options.dll and /dev/null differ
diff --git a/DLL/Newtonsoft.Json.dll b/DLL/Newtonsoft.Json.dll
deleted file mode 100644
index 3af21d5..0000000
Binary files a/DLL/Newtonsoft.Json.dll and /dev/null differ
diff --git a/eCIAv2.WindowsApp/Config/LogXnetConfig.json b/eCIAv2.Library/Config/LogXnetConfig.json
similarity index 100%
rename from eCIAv2.WindowsApp/Config/LogXnetConfig.json
rename to eCIAv2.Library/Config/LogXnetConfig.json
diff --git a/eCIAv2.Library/eCIAv2.Library.csproj b/eCIAv2.Library/eCIAv2.Library.csproj
index 4c71011..333bcd2 100644
--- a/eCIAv2.Library/eCIAv2.Library.csproj
+++ b/eCIAv2.Library/eCIAv2.Library.csproj
@@ -7,18 +7,15 @@
-
- ..\DLL\Microsoft.Extensions.Logging.dll
-
-
- ..\DLL\Microsoft.Extensions.Logging.Abstractions.dll
-
-
- ..\DLL\Newtonsoft.Json.dll
-
..\DLL\SystemX.Core.dll
+
+
+ Always
+
+
+
diff --git a/eCIAv2.WindowsApp/Forms/MainForm.cs b/eCIAv2.WindowsApp/Forms/MainForm.cs
index 8362a47..cc7ea23 100644
--- a/eCIAv2.WindowsApp/Forms/MainForm.cs
+++ b/eCIAv2.WindowsApp/Forms/MainForm.cs
@@ -1,10 +1,17 @@
+using eCIAv2.WindowsApp.ViewModels;
+
namespace eCIAv2.WindowsApp
{
public partial class MainForm : Form
{
- public MainForm()
+ private readonly MainFromViewModel _vm;
+
+ public MainForm(MainFromViewModel vm)
{
InitializeComponent();
+ _vm = vm;
+
+ var ss= _vm.LoadConfig();
}
}
}
diff --git a/eCIAv2.WindowsApp/Program.cs b/eCIAv2.WindowsApp/Program.cs
index 5bef634..0b6e365 100644
--- a/eCIAv2.WindowsApp/Program.cs
+++ b/eCIAv2.WindowsApp/Program.cs
@@ -1,13 +1,21 @@
+using eCIAv2.WindowsApp.Services;
+using eCIAv2.WindowsApp.ViewModels;
+using Microsoft.Extensions.DependencyInjection;
+using Microsoft.Extensions.Hosting;
+
namespace eCIAv2.WindowsApp
{
internal static class Program
{
+ public static IHost AppHost { get; private set; }
+
///
/// The main entry point for the application.
///
[STAThread]
static void Main()
{
+ //LogXnet
string configDir = @$"{Application.StartupPath}Config";
//raed log4net configs
if (LogXnet.ReadConfig(@$"{configDir}/LogXnetConfig.json") == true)
@@ -20,10 +28,23 @@ namespace eCIAv2.WindowsApp
return;
}
- // To customize application configuration such as set high DPI settings or default font,
- // see https://aka.ms/applicationconfiguration.
+ AppHost = Host.CreateDefaultBuilder()
+ .ConfigureServices((context, services) =>
+ {
+ // services
+ services.AddSingleton();
+
+ //viewmodels
+ services.AddTransient();
+
+ // forms
+ services.AddTransient();
+ }).Build();
+
ApplicationConfiguration.Initialize();
- Application.Run(new MainForm());
+
+ var form = AppHost.Services.GetRequiredService();
+ Application.Run(form);
}
}
}
\ No newline at end of file
diff --git a/eCIAv2.WindowsApp/Services/ConfigService.cs b/eCIAv2.WindowsApp/Services/ConfigService.cs
new file mode 100644
index 0000000..e9c2131
--- /dev/null
+++ b/eCIAv2.WindowsApp/Services/ConfigService.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace eCIAv2.WindowsApp.Services
+{
+ public class ConfigService
+ {
+ public string LoadConfig()
+ {
+ return "loadConfig";
+ }
+ }
+}
diff --git a/eCIAv2.WindowsApp/ViewModels/MainFromViewModel.cs b/eCIAv2.WindowsApp/ViewModels/MainFromViewModel.cs
new file mode 100644
index 0000000..284dec1
--- /dev/null
+++ b/eCIAv2.WindowsApp/ViewModels/MainFromViewModel.cs
@@ -0,0 +1,24 @@
+using eCIAv2.WindowsApp.Services;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace eCIAv2.WindowsApp.ViewModels
+{
+ public class MainFromViewModel
+ {
+ private readonly ConfigService _configService;
+
+ public MainFromViewModel(ConfigService configService)
+ {
+ _configService = configService;
+ }
+
+ public string LoadConfig()
+ {
+ return _configService.LoadConfig();
+ }
+ }
+}
diff --git a/eCIAv2.WindowsApp/eCIAv2.WindowsApp.csproj b/eCIAv2.WindowsApp/eCIAv2.WindowsApp.csproj
index 2f643d9..630b67c 100644
--- a/eCIAv2.WindowsApp/eCIAv2.WindowsApp.csproj
+++ b/eCIAv2.WindowsApp/eCIAv2.WindowsApp.csproj
@@ -8,29 +8,17 @@
enable
+
+
+
+
+
+
-
- ..\DLL\Microsoft.Extensions.DependencyInjection.dll
-
-
- ..\DLL\Microsoft.Extensions.DependencyInjection.Abstractions.dll
-
-
- ..\DLL\Microsoft.Extensions.Logging.dll
-
-
- ..\DLL\Microsoft.Extensions.Logging.Abstractions.dll
-
-
- ..\DLL\Microsoft.Extensions.Options.dll
-
-
- ..\DLL\Newtonsoft.Json.dll
-
..\DLL\SystemX.Core.dll
@@ -42,4 +30,8 @@
+
+
+
+
\ No newline at end of file