diff --git a/SewerStammGen.Console/Program.cs b/SewerStammGen.Console/Program.cs
new file mode 100644
index 0000000..df21b49
--- /dev/null
+++ b/SewerStammGen.Console/Program.cs
@@ -0,0 +1,10 @@
+namespace SewerStammGen.Console
+{
+ internal class Program
+ {
+ static void Main(string[] args)
+ {
+ Console.WriteLine("Hello, World!");
+ }
+ }
+}
\ No newline at end of file
diff --git a/SewerStammGen.Console/SewerStammGen.Console.csproj b/SewerStammGen.Console/SewerStammGen.Console.csproj
new file mode 100644
index 0000000..1c9d818
--- /dev/null
+++ b/SewerStammGen.Console/SewerStammGen.Console.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ net7.0
+ enable
+ enable
+
+
+
+
+
+
+
+
diff --git a/SewerStammGen.ConsoleApp/Program.cs b/SewerStammGen.ConsoleApp/Program.cs
new file mode 100644
index 0000000..f531e46
--- /dev/null
+++ b/SewerStammGen.ConsoleApp/Program.cs
@@ -0,0 +1,43 @@
+using SewerStammGen.DAL.Services;
+
+using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.Shared.Enum;
+using System.Diagnostics;
+
+namespace SewerStammGen.ConsoleApp
+{
+ internal class Program
+ {
+ static void Main(string[] args)
+ {
+ IProjektDataService projektService = new ProjektDataService();
+
+ Projekt neuesProjekt = new Projekt()
+ {
+ Erstelldatum = "test",
+ Projektname = "test",
+ Kodierungssystem = EKodierungssystem.EN13508_2_2011,
+ ExportType = EExportType.XML2006,
+ Ort = "test",
+ Strasse = "test",
+ };
+
+ //test(neuesProjekt, projektService);
+ readtest(projektService);
+ Console.WriteLine("Hello, World!");
+ }
+
+ private static async void readtest(IProjektDataService projektService)
+ {
+ var m = await projektService.GetAll();
+ Debugger.Break();
+ }
+
+ private static async void test(Projekt neuesProjekt, IProjektDataService projektService)
+ {
+ var m = await projektService.Create(neuesProjekt);
+ Console.WriteLine(m.Id);
+ }
+ }
+}
\ No newline at end of file
diff --git a/SewerStammGen.ConsoleApp/SewerStammGen.ConsoleApp.csproj b/SewerStammGen.ConsoleApp/SewerStammGen.ConsoleApp.csproj
new file mode 100644
index 0000000..1c9d818
--- /dev/null
+++ b/SewerStammGen.ConsoleApp/SewerStammGen.ConsoleApp.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ net7.0
+ enable
+ enable
+
+
+
+
+
+
+
+
diff --git a/SewerStammGen.DAL/Class1.cs b/SewerStammGen.DAL/Class1.cs
new file mode 100644
index 0000000..ced36b0
--- /dev/null
+++ b/SewerStammGen.DAL/Class1.cs
@@ -0,0 +1,7 @@
+namespace SewerStammGen.DAL
+{
+ public class Class1
+ {
+
+ }
+}
\ No newline at end of file
diff --git a/SewerStammGen.DAL/Services/AuftraggeberDataService.cs b/SewerStammGen.DAL/Services/AuftraggeberDataService.cs
new file mode 100644
index 0000000..f97b809
--- /dev/null
+++ b/SewerStammGen.DAL/Services/AuftraggeberDataService.cs
@@ -0,0 +1,89 @@
+using Npgsql;
+using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SewerStammGen.DAL.Services
+{
+ public class AuftraggeberDataService : IAuftraggeberDataService
+ {
+ string connString = "Host = localhost; Database = SewerGen; Username = SewerGen; Password = SewerGen";
+ NpgsqlDataSource dataSource;
+ NpgsqlConnection? conn = null;
+ public AuftraggeberDataService()
+ {
+ var dataSourceBuilder = new NpgsqlDataSourceBuilder(connString);
+ dataSource = dataSourceBuilder.Build();
+
+ //OpenConnection();
+ conn = dataSource.OpenConnection();
+
+ }
+ public Task Create(Auftraggeber entity)
+ {
+ throw new NotImplementedException();
+ }
+
+ public Auftraggeber CreateNonAsync(Auftraggeber entity)
+ {
+ throw new NotImplementedException();
+ }
+
+ public Task Delete(int id)
+ {
+ throw new NotImplementedException();
+ }
+
+ public async Task Get(int id)
+ {
+ Auftraggeber result = new Auftraggeber();
+ using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Auftraggebers\" WHERE \"Id\" = @1", conn))
+ {
+ cmd.Parameters.AddWithValue("1", id);
+ using var reader = await cmd.ExecuteReaderAsync();
+ reader.Read();
+ result = parseAuftraggeber(reader);
+ }
+
+ return result;
+
+ }
+
+ private Auftraggeber parseAuftraggeber(NpgsqlDataReader reader)
+ {
+ return new Auftraggeber()
+ {
+ Id = reader.GetInt32(0),
+ Name = reader.IsDBNull(1) ? "" : reader.GetString(1),
+ Strasse = reader.IsDBNull(2) ? "" : reader.GetString(2),
+ Ort = reader.IsDBNull(3) ? "" : reader.GetString(3),
+ Postleitzahl = reader.IsDBNull(4) ? "" : reader.GetString(4),
+ Ansprechpartner = reader.IsDBNull(5) ? "" : reader.GetString(5),
+ Telefonnummer = reader.IsDBNull(6) ? "" : reader.GetString(6)
+ };
+ }
+
+ public async Task> GetAll()
+ {
+ List result = new List();
+ using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Auftraggebers\"", conn))
+ using (var reader = await cmd.ExecuteReaderAsync())
+ {
+ while (reader.Read())
+ {
+ result.Add(parseAuftraggeber(reader));
+ }
+ }
+ return result;
+ }
+
+ public Task Update(int id, Auftraggeber entity)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/SewerStammGen.DAL/Services/ProjektDataService.cs b/SewerStammGen.DAL/Services/ProjektDataService.cs
new file mode 100644
index 0000000..d304cb2
--- /dev/null
+++ b/SewerStammGen.DAL/Services/ProjektDataService.cs
@@ -0,0 +1,119 @@
+using SewerStammGen.Shared.Contracts;
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Npgsql;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.Shared.Enum;
+
+namespace SewerStammGen.DAL.Services
+{
+ public class ProjektDataService : IProjektDataService
+ {
+ string connString = "Host = localhost; Database = SewerGen; Username = SewerGen; Password = SewerGen";
+ NpgsqlDataSource dataSource;
+ NpgsqlConnection? conn = null;
+ public ProjektDataService()
+ {
+ var dataSourceBuilder = new NpgsqlDataSourceBuilder(connString);
+ dataSource = dataSourceBuilder.Build();
+
+ //OpenConnection();
+ conn = dataSource.OpenConnection();
+
+ }
+
+ private async void OpenConnection()
+ {
+ conn = await dataSource.OpenConnectionAsync();
+ }
+
+ public async Task Create(Projekt entity)
+ {
+ string command = "INSERT INTO public.\"Projekte\" (\"Projektname\", \"Erstelldatum\", \"Strasse\", \"Ort\", \"ExportType\", \"Kodierungssystem\",\"AuftraggeberId\") " +
+ "VALUES(@1,@2,@3,@4,@5,@6,@7) RETURNING \"Id\"";
+
+ await using(var cmd = new NpgsqlCommand(command, conn))
+ {
+ cmd.Parameters.AddWithValue("1", entity.Projektname);
+ cmd.Parameters.AddWithValue("2", entity.Erstelldatum);
+ cmd.Parameters.AddWithValue("3", entity.Strasse);
+ cmd.Parameters.AddWithValue("4", entity.Ort);
+ cmd.Parameters.AddWithValue("5", (int)entity.ExportType);
+ cmd.Parameters.AddWithValue("6", (int)entity.Kodierungssystem);
+ cmd.Parameters.AddWithValue("7", entity.Auftraggeber.Id);
+ using var reader = await cmd.ExecuteReaderAsync();
+ reader.Read();
+ entity.Id = reader.GetInt32(0);
+ }
+ return entity;
+ }
+
+ public Projekt CreateNonAsync(Projekt entity)
+ {
+ throw new NotImplementedException();
+ }
+
+ public Task Delete(int id)
+ {
+ throw new NotImplementedException();
+ }
+
+ public async Task Get(int id)
+ {
+ Projekt result = new Projekt();
+ IAuftraggeberDataService auftraggeberDataService = new AuftraggeberDataService();
+ using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Projekte\" WHERE \"Id\" = @1", conn))
+ {
+ cmd.Parameters.AddWithValue("1", id);
+ using var reader = await cmd.ExecuteReaderAsync();
+ reader.Read();
+ result = parseProjekt(reader);
+ result.Auftraggeber = await auftraggeberDataService.Get(reader.GetInt32(7));
+ }
+ return result;
+ }
+
+ private Projekt? parseProjekt(NpgsqlDataReader reader)
+ {
+ return new Projekt()
+ {
+ Id = reader.GetInt32(0),
+ Projektname = reader.GetString(1),
+ Erstelldatum = reader.GetString(2),
+ Strasse = reader.GetString(3),
+ Ort = reader.GetString(4),
+ ExportType = (EExportType)reader.GetInt32(5),
+ Kodierungssystem = (EKodierungssystem)reader.GetInt32(6)
+ };
+ }
+
+ public async Task> GetAll()
+ {
+ IAuftraggeberDataService auftraggeberDataService = new AuftraggeberDataService();
+
+ IEnumerable auftraggebers = await auftraggeberDataService.GetAll();
+
+ List result = new List();
+ using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Projekte\"", conn))
+ using (var reader = await cmd.ExecuteReaderAsync())
+ {
+ while (reader.Read())
+ {
+ Projekt projekt = parseProjekt(reader);
+ projekt.Auftraggeber = auftraggebers.Where(x => x.Id == reader.GetInt32(7)).ToList().Last();
+ result.Add(projekt);
+ }
+ }
+ return result;
+ }
+
+ public Task Update(int id, Projekt entity)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/SewerStammGen.DAL/SewerStammGen.DAL.csproj b/SewerStammGen.DAL/SewerStammGen.DAL.csproj
new file mode 100644
index 0000000..0828c77
--- /dev/null
+++ b/SewerStammGen.DAL/SewerStammGen.DAL.csproj
@@ -0,0 +1,17 @@
+
+
+
+ net7.0
+ enable
+ enable
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SewerStammGen/Commands/HaltungEditSaveCommand.cs b/SewerStammGen/Commands/HaltungEditSaveCommand.cs
index d68507e..6f22117 100644
--- a/SewerStammGen/Commands/HaltungEditSaveCommand.cs
+++ b/SewerStammGen/Commands/HaltungEditSaveCommand.cs
@@ -1,7 +1,7 @@
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.ViewModel;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Diagnostics;
diff --git a/SewerStammGen/Commands/ProjektAddCommand.cs b/SewerStammGen/Commands/ProjektAddCommand.cs
index d951dc8..73cd275 100644
--- a/SewerStammGen/Commands/ProjektAddCommand.cs
+++ b/SewerStammGen/Commands/ProjektAddCommand.cs
@@ -1,7 +1,7 @@
-using SewerStammGen.WPF.Interface.Navigator;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/SewerStammGen/Commands/ProjektEditCommand.cs b/SewerStammGen/Commands/ProjektEditCommand.cs
index 9c564e8..aac2301 100644
--- a/SewerStammGen/Commands/ProjektEditCommand.cs
+++ b/SewerStammGen/Commands/ProjektEditCommand.cs
@@ -1,8 +1,8 @@
-using SewerStammGen.WPF.Interface.Navigator;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System.Runtime.CompilerServices;
using System.Threading.Tasks;
diff --git a/SewerStammGen/Commands/ProjektSelectCommand.cs b/SewerStammGen/Commands/ProjektSelectCommand.cs
index e7a72de..5abcaad 100644
--- a/SewerStammGen/Commands/ProjektSelectCommand.cs
+++ b/SewerStammGen/Commands/ProjektSelectCommand.cs
@@ -1,6 +1,5 @@
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
-using Shared.Domain;
using System;
using System.Threading.Tasks;
diff --git a/SewerStammGen/Commands/SchachtAddCommand.cs b/SewerStammGen/Commands/SchachtAddCommand.cs
index 3584058..88b417b 100644
--- a/SewerStammGen/Commands/SchachtAddCommand.cs
+++ b/SewerStammGen/Commands/SchachtAddCommand.cs
@@ -1,8 +1,8 @@
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/SewerStammGen/HostBuilders/AddServicesHostBuilderExtensions.cs b/SewerStammGen/HostBuilders/AddServicesHostBuilderExtensions.cs
index ea7caba..e71f624 100644
--- a/SewerStammGen/HostBuilders/AddServicesHostBuilderExtensions.cs
+++ b/SewerStammGen/HostBuilders/AddServicesHostBuilderExtensions.cs
@@ -1,13 +1,13 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
-
+using SewerStammGen.DAL.Services;
using SewerStammGen.Shared.Contracts;
using SewerStammGen.Shared.Services;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State.Navigation;
using Shared.Contracts;
-using Shared.Domain;
+
using System;
using System.Collections.Generic;
using System.Linq;
@@ -25,12 +25,9 @@ namespace SewerStammGen.HostBuilders
{
services.AddSingleton();
services.AddSingleton>();
- /* services.AddSingleton, GenericDataService>();
- services.AddSingleton, GenericDataService>();
- services.AddSingleton, GenericDataService>();
- services.AddSingleton();
- services.AddSingleton();
- */
+ services.AddSingleton();
+ services.AddSingleton();
+
services.AddSingleton();
});
return host;
diff --git a/SewerStammGen/HostBuilders/AddViewModelsHostBuilderExtensions.cs b/SewerStammGen/HostBuilders/AddViewModelsHostBuilderExtensions.cs
index 496ef16..eefe414 100644
--- a/SewerStammGen/HostBuilders/AddViewModelsHostBuilderExtensions.cs
+++ b/SewerStammGen/HostBuilders/AddViewModelsHostBuilderExtensions.cs
@@ -6,7 +6,6 @@ using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State.Navigation;
using SewerStammGen.WPF.ViewModel.Factories;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -15,6 +14,7 @@ using System.Text;
using System.Threading.Tasks;
using SewerStammGen.WPF.ViewModel.State;
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
namespace SewerStammGen.HostBuilders
{
@@ -86,7 +86,7 @@ namespace SewerStammGen.HostBuilders
services.AddSingleton>(services =>
{
return () => new ProjektEditViewModel(
- services.GetRequiredService>(),
+ services.GetRequiredService(),
services.GetRequiredService>(),
services.GetRequiredService()
);
@@ -95,7 +95,7 @@ namespace SewerStammGen.HostBuilders
services.AddSingleton>(services =>
{
return () => new ProjektListViewModel(
- services.GetRequiredService>(),
+ services.GetRequiredService(),
services.GetRequiredService>(),
services.GetRequiredService()
);
diff --git a/SewerStammGen/SewerStammGen.WPF.csproj b/SewerStammGen/SewerStammGen.WPF.csproj
index 1c352c6..6259f6b 100644
--- a/SewerStammGen/SewerStammGen.WPF.csproj
+++ b/SewerStammGen/SewerStammGen.WPF.csproj
@@ -19,6 +19,7 @@
+
diff --git a/SewerStammGen/ViewModel/Haltung/HaltungEditViewModel.cs b/SewerStammGen/ViewModel/Haltung/HaltungEditViewModel.cs
index 5aa7f08..cf17e07 100644
--- a/SewerStammGen/ViewModel/Haltung/HaltungEditViewModel.cs
+++ b/SewerStammGen/ViewModel/Haltung/HaltungEditViewModel.cs
@@ -1,8 +1,8 @@
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Commands;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
diff --git a/SewerStammGen/ViewModel/Haltung/HaltungListViewModel.cs b/SewerStammGen/ViewModel/Haltung/HaltungListViewModel.cs
index 6799607..812e7b4 100644
--- a/SewerStammGen/ViewModel/Haltung/HaltungListViewModel.cs
+++ b/SewerStammGen/ViewModel/Haltung/HaltungListViewModel.cs
@@ -1,8 +1,8 @@
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Commands;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
diff --git a/SewerStammGen/ViewModel/Projekt/ProjektEditViewModel.cs b/SewerStammGen/ViewModel/Projekt/ProjektEditViewModel.cs
index 28bff52..d2cd9eb 100644
--- a/SewerStammGen/ViewModel/Projekt/ProjektEditViewModel.cs
+++ b/SewerStammGen/ViewModel/Projekt/ProjektEditViewModel.cs
@@ -1,7 +1,7 @@
-using SewerStammGen.WPF.Interface.Navigator;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Diagnostics;
diff --git a/SewerStammGen/ViewModel/Projekt/ProjektListViewModel.cs b/SewerStammGen/ViewModel/Projekt/ProjektListViewModel.cs
index 3d726ff..ec851c7 100644
--- a/SewerStammGen/ViewModel/Projekt/ProjektListViewModel.cs
+++ b/SewerStammGen/ViewModel/Projekt/ProjektListViewModel.cs
@@ -1,9 +1,10 @@
-using SewerStammGen.WPF.Commands;
+using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.WPF.Commands;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
@@ -16,7 +17,7 @@ namespace SewerStammGen.WPF.ViewModel
{
public class ProjektListViewModel : BaseViewModel
{
- private IDataService genericDataService;
+ private IProjektDataService genericDataService;
private readonly ObservableCollection _projekte;
private readonly IActualState _actualState;
public ObservableCollection Projekte { get => _projekte; }
@@ -44,7 +45,7 @@ namespace SewerStammGen.WPF.ViewModel
}
}
- public ProjektListViewModel(IDataService generic, IRenavigator renavigator,IActualState actualState)
+ public ProjektListViewModel(IProjektDataService generic, IRenavigator renavigator,IActualState actualState)
{
_projekte = new ObservableCollection();
if (generic == null) throw new ArgumentNullException(nameof(generic));
diff --git a/SewerStammGen/ViewModel/Schacht/ManholeEditViewModel.cs b/SewerStammGen/ViewModel/Schacht/ManholeEditViewModel.cs
index cdc0244..d95d361 100644
--- a/SewerStammGen/ViewModel/Schacht/ManholeEditViewModel.cs
+++ b/SewerStammGen/ViewModel/Schacht/ManholeEditViewModel.cs
@@ -1,6 +1,6 @@
-using SewerStammGen.WPF.ViewModel.State;
+using SewerStammGen.Shared.Domain;
+using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/SewerStammGen/ViewModel/Schacht/ManholeListViewModel.cs b/SewerStammGen/ViewModel/Schacht/ManholeListViewModel.cs
index ed2827a..6ab6621 100644
--- a/SewerStammGen/ViewModel/Schacht/ManholeListViewModel.cs
+++ b/SewerStammGen/ViewModel/Schacht/ManholeListViewModel.cs
@@ -1,9 +1,9 @@
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Commands;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
diff --git a/SewerStammGen/ViewModel/State/ActualState.cs b/SewerStammGen/ViewModel/State/ActualState.cs
index 620d54e..96a2482 100644
--- a/SewerStammGen/ViewModel/State/ActualState.cs
+++ b/SewerStammGen/ViewModel/State/ActualState.cs
@@ -1,4 +1,4 @@
-using Shared.Domain;
+using SewerStammGen.Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/SewerStammGen/ViewModel/State/IActualState.cs b/SewerStammGen/ViewModel/State/IActualState.cs
index da532ff..2a68ebd 100644
--- a/SewerStammGen/ViewModel/State/IActualState.cs
+++ b/SewerStammGen/ViewModel/State/IActualState.cs
@@ -1,4 +1,4 @@
-using Shared.Domain;
+using SewerStammGen.Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/Shared/Contracts/IAuftraggeberDataService.cs b/Shared/Contracts/IAuftraggeberDataService.cs
new file mode 100644
index 0000000..8863baa
--- /dev/null
+++ b/Shared/Contracts/IAuftraggeberDataService.cs
@@ -0,0 +1,14 @@
+using SewerStammGen.Shared.Domain;
+using Shared.Contracts;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SewerStammGen.Shared.Contracts
+{
+ public interface IAuftraggeberDataService : IDataService
+ {
+ }
+}
diff --git a/Shared/Contracts/IProjektDataService.cs b/Shared/Contracts/IProjektDataService.cs
new file mode 100644
index 0000000..05f1fbf
--- /dev/null
+++ b/Shared/Contracts/IProjektDataService.cs
@@ -0,0 +1,15 @@
+using SewerStammGen.Shared.Domain;
+using Shared.Contracts;
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SewerStammGen.Shared.Contracts
+{
+ public interface IProjektDataService : IDataService
+ {
+ }
+}
diff --git a/Shared/Contracts/ISchachtDataService.cs b/Shared/Contracts/ISchachtDataService.cs
index 7b599a0..484d93f 100644
--- a/Shared/Contracts/ISchachtDataService.cs
+++ b/Shared/Contracts/ISchachtDataService.cs
@@ -1,5 +1,6 @@
-using Shared.Contracts;
-using Shared.Domain;
+using SewerStammGen.Shared.Domain;
+using Shared.Contracts;
+
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/Shared/Contracts/ISchachtService.cs b/Shared/Contracts/ISchachtService.cs
index 02e3ba1..9b3b80e 100644
--- a/Shared/Contracts/ISchachtService.cs
+++ b/Shared/Contracts/ISchachtService.cs
@@ -1,4 +1,5 @@
-using Shared.Domain;
+
+using SewerStammGen.Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/Shared/Domain/Auftraggeber.cs b/Shared/Domain/Auftraggeber.cs
index 9c6a1ab..322b2fa 100644
--- a/Shared/Domain/Auftraggeber.cs
+++ b/Shared/Domain/Auftraggeber.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Domain
+namespace SewerStammGen.Shared.Domain
{
public class Auftraggeber : DBObject
{
diff --git a/Shared/Domain/DBObject.cs b/Shared/Domain/DBObject.cs
index ac26a6e..7781dd5 100644
--- a/Shared/Domain/DBObject.cs
+++ b/Shared/Domain/DBObject.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Domain
+namespace SewerStammGen.Shared.Domain
{
public class DBObject
{
diff --git a/Shared/Domain/Kanal.cs b/Shared/Domain/Kanal.cs
index c78b1d6..de27b6a 100644
--- a/Shared/Domain/Kanal.cs
+++ b/Shared/Domain/Kanal.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Domain
+namespace SewerStammGen.Shared.Domain
{
public class Kanal : DBObject
{
diff --git a/Shared/Domain/Projekt.cs b/Shared/Domain/Projekt.cs
index 3f7b149..95a3069 100644
--- a/Shared/Domain/Projekt.cs
+++ b/Shared/Domain/Projekt.cs
@@ -1,11 +1,12 @@
-using Shared.Enum;
+
+using SewerStammGen.Shared.Enum;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Domain
+namespace SewerStammGen.Shared.Domain
{
public class Projekt : DBObject
{
diff --git a/Shared/Domain/Schacht.cs b/Shared/Domain/Schacht.cs
index 51392c5..5e602d1 100644
--- a/Shared/Domain/Schacht.cs
+++ b/Shared/Domain/Schacht.cs
@@ -5,7 +5,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Domain
+namespace SewerStammGen.Shared.Domain
{
public class Schacht : DBObject
{
diff --git a/Shared/Enum/EExportType.cs b/Shared/Enum/EExportType.cs
index 64e31e2..57679fd 100644
--- a/Shared/Enum/EExportType.cs
+++ b/Shared/Enum/EExportType.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Enum
+namespace SewerStammGen.Shared.Enum
{
public enum EExportType
{
diff --git a/Shared/Enum/EKodierungssystem.cs b/Shared/Enum/EKodierungssystem.cs
index ea5bc24..92102fb 100644
--- a/Shared/Enum/EKodierungssystem.cs
+++ b/Shared/Enum/EKodierungssystem.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace Shared.Enum
+namespace SewerStammGen.Shared.Enum
{
public enum EKodierungssystem
{
diff --git a/Shared/Services/SchachtService.cs b/Shared/Services/SchachtService.cs
index 7d6e4ac..23e0ba9 100644
--- a/Shared/Services/SchachtService.cs
+++ b/Shared/Services/SchachtService.cs
@@ -1,6 +1,6 @@
using SewerStammGen.Shared.Contracts;
+using SewerStammGen.Shared.Domain;
using Shared.Contracts;
-using Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
diff --git a/Stammdatengenerator.sln b/Stammdatengenerator.sln
index 0e86db9..4b1a21c 100644
--- a/Stammdatengenerator.sln
+++ b/Stammdatengenerator.sln
@@ -7,6 +7,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SewerStammGen.WPF", "SewerS
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SewerStammGen.Shared", "Shared\SewerStammGen.Shared.csproj", "{3A47BD31-36C2-45C4-9609-D0D9D92A993B}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SewerStammGen.DAL", "SewerStammGen.DAL\SewerStammGen.DAL.csproj", "{7D983D7C-84C2-4FD8-B2CE-B13529036CB5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SewerStammGen.ConsoleApp", "SewerStammGen.ConsoleApp\SewerStammGen.ConsoleApp.csproj", "{774EB800-0C5B-4047-A02D-DB4F1BA58167}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -21,6 +25,14 @@ Global
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Release|Any CPU.Build.0 = Release|Any CPU
+ {774EB800-0C5B-4047-A02D-DB4F1BA58167}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {774EB800-0C5B-4047-A02D-DB4F1BA58167}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {774EB800-0C5B-4047-A02D-DB4F1BA58167}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {774EB800-0C5B-4047-A02D-DB4F1BA58167}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE