From 0fbf4cd919af15895685c01cbc5691fb764e943d Mon Sep 17 00:00:00 2001 From: Dultus Date: Sat, 7 Dec 2024 15:38:05 +0100 Subject: [PATCH] API Update --- .gitignore | 1 + Extension/API.js | 13 +- Extension/horse.js | 3 + .../0.2.1653.9816/SemanticSymbols.db-shm | Bin 32768 -> 32768 bytes .../DesignTimeBuild/.dtbcache.v2 | Bin 145735 -> 146045 bytes ...410397f1-e154-4847-b568-19ff3386dd88.vsidx | Bin 12603 -> 0 bytes ...81fd1417-9b73-4074-8733-8060f29e7cbb.vsidx | Bin 3056 -> 0 bytes ...f6cf1ad8-ea4d-4886-93ed-cf6ed311e04d.vsidx | Bin 678 -> 0 bytes .../.vs/HRServer-Exporter/v17/.suo | Bin 30208 -> 30208 bytes .../HRServer/Controllers/HorseController.cs | 28 ++- HRServer-Exporter/HRServer/Models/Horse.cs | 223 +++++++++++++++++- .../obj/Debug/net8.0/HRServer.AssemblyInfo.cs | 2 +- .../net8.0/HRServer.AssemblyInfoInputs.cache | 2 +- ....GeneratedMSBuildEditorConfig.editorconfig | 4 +- .../obj/Debug/net8.0/HRServer.assets.cache | Bin 3494 -> 3494 bytes .../obj/HRServer.csproj.nuget.dgspec.json | 10 +- .../HRServer/obj/project.assets.json | 6 +- .../HRServer/obj/project.nuget.cache | 4 +- 18 files changed, 276 insertions(+), 20 deletions(-) create mode 100644 .gitignore delete mode 100644 HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/410397f1-e154-4847-b568-19ff3386dd88.vsidx delete mode 100644 HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/81fd1417-9b73-4074-8733-8060f29e7cbb.vsidx delete mode 100644 HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/f6cf1ad8-ea4d-4886-93ed-cf6ed311e04d.vsidx diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a4d6d9c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.vs/ \ No newline at end of file diff --git a/Extension/API.js b/Extension/API.js index cf48be8..1220ba4 100644 --- a/Extension/API.js +++ b/Extension/API.js @@ -29,7 +29,18 @@ async function setBaseDataHorseAPI(id, basedata) { } async function getHorseAPI(id) { let horseData; - const apiUrl = url+`getHorseInfo/id=${id}`; + const apiUrl = url+`getHorse/id=${id}`; + await fetch(apiUrl) + .then(response => response.json()) + .then(data => { + horseData = data; + }); + return horseData; +} +async function getHorseLoadStateAPIAsync(id) +{ + let horseData; + const apiUrl = url+`getHorseLoadState/id=${id}`; await fetch(apiUrl) .then(response => response.json()) .then(data => { diff --git a/Extension/horse.js b/Extension/horse.js index 58f5746..8da866c 100644 --- a/Extension/horse.js +++ b/Extension/horse.js @@ -1,3 +1,6 @@ +// Information about loading states of the horses + + // Modell für ein Pferd var globalHorse = { diff --git a/HRServer-Exporter/.vs/HRServer-Exporter/CopilotIndices/0.2.1653.9816/SemanticSymbols.db-shm b/HRServer-Exporter/.vs/HRServer-Exporter/CopilotIndices/0.2.1653.9816/SemanticSymbols.db-shm index a5897ea8047f307902840eeda32555d5d8203ad7..ddecc3e51aa28671b8df4edc8fbbcff5eb53f21d 100644 GIT binary patch literal 32768 zcmeI*d9+Sd7{~G7_r2HU-fJeVAw$NLDValvYt9hLScXKBF+`z^8OuBiWu9doBXc1` z8A7Hql|q!zIn`Oc>s^VEdB+ZN)~*iMb(*Y5V;tS_+L{p^k5=J(Hct3K}>H^!S+U~VraFt68st8=}v z19N)qfhK`*-WdOOY-jHk8ers~`%aJjef`h9lXiElp1GUDtx>K2R(&^%cU|wsEV{M$ z&pE2GZQOsphn|&t?M1b>VNSbyFY@}MvU6j+J-HY8-0|*ZzPp*9yN+9}`EKUut;xOS zz58fXbMyAWi}^qLM`ab2d7zc+>F%9d{d4%=^W2!*$>ks8zi0mK-t`_h5C53|%efA# z6%#N46EFc2FaZ-V0TVC*6EFc2FaZ-V0TVC*6EFc2FaZ-V0TVC*6EFc2FaZ-V0TVC* z6EFc2FaZ-V0TVC*6EFc2FaZ-V0TVC*6EFc2FaZ-Vf%{(ICFeowI3y)CS;@syl%fi+ z(3Z~hW)NfChp?@fzym6P^9GC%=WPIS6;JV%L`juW>6Jx~DVOr8ke*g)mD97Tt`}5a z4fV2`s<~cQYjx1u>aO1EqxUpWgY>?JX|%>@qCVCP&C@4ZrZrlx&DySA`dWu{RNv{G ze$p@cT@Xq_9^zp#@+i3}KoLq)k*d5veHzk~mbBw7y3>dE8Npa4Go9Id!b;Y%fo<$y z4+l8RaZd9C7x6srk0`5hE59OD*?9v}BQ;Soy{49GqmJsL z9vZ7jnyL9(uC>~t9onbE`d&ZivaTtNM5G}TPf(CZDp89UX+|sFrUxG|l8>0dB37}H z&)LgCPH={c{6>&3)UMLo*dGgtNr52eO*KGkR1sogrFWBO4)>$-d-CK;K@Mj?vw49`-HmuN(5-k>M%F^X}_ zWDW~h$Z9_23wH7iM>xxmT;)1pzIgU+h{=t%+))SwE44Bxo1RcXl~olzuf}>sud0Pw zsjc2rSM}03eWY1hs1;hLt@={?^{r0nysqem!bw6}vXFTKCbshxhd9YOF7Z3TKKDI%R!rc(6bMy9CDX&osO-w4r&K}}R8_UrPMy?E{WMr3 zG+t9RTZ^?)8?;S(bU?>-S{L-If{06U((xEiQjD@ZM|0ZKmA(vNJWK3v=KpeQZR}_T z!jwqKl}4GALr4b>=psOg%krCO~``a)mn8=cfyUD8#>B0ed2gzV&_ zIOVB9U0$XI9eIcT4C6zlGLL1fXA8U7$5FoLCoUsjh%bR%{V}_>mOWa52GK@XfC)UP z0wE+IB{|4X32IW0*Ljlx3}+(qS#H1EAJlEPb^R$2n^a^VCnc%C^E9Co?=p}{Ok)L~ zv6bEI=NPB>nJeIn?Q{PVf)x`m0TVC*6EFc2FaZ-V0TVC*6EFc2FaZ-V0TVC*6EFc2 RFaZ-V0TVC*6SzMF{s5=&E;j%G delta 231 zcmZo@U}|V!s+V}A%K!p$K+MR%Adm#4Ie~bBp`y;Ok9=p^6`%I zq^buR1qKN~@;?%Qh%zuSFl=n>XWV>+L(6LO1CAqXjES2sa{OhQ{Kr*q^CgZ8Op||k w2mu*ym?r=5Rs%9_FirmE2Nn4eC;=3C#x(g;2$b<59KzWAF6ti>&^!?(07Md2F8}}l diff --git a/HRServer-Exporter/.vs/HRServer-Exporter/DesignTimeBuild/.dtbcache.v2 b/HRServer-Exporter/.vs/HRServer-Exporter/DesignTimeBuild/.dtbcache.v2 index cdb6ea54eeecd80290cee17899ee5e85d210dca2..2740cebfc805d603c0c80d87db7517e03e667746 100644 GIT binary patch delta 870 zcmX^9iR14VjtKz{NtTHzDTZd|rY5PDX%-eK28M|y$*HEPhQ>)rX%;EwiHWJEW~o4! zn3QB-kz|;fWNvO@VVY)OY-wR(oN6|4f&?Su#8rCcc~Mp|(FTUG3f@JTNtq>83NEQ- zsX6%txv6<2KnbH*g@B^`tkmq1)EJK-UFZCqoYdr!{G!Qqj2e?=7~Ra1$kuO9zTKR< zli8T0%=5{%TW0bE4#CN*Ie90SF^N#Y9L~*mnEF}F>nL^*=j6TYhKx~@-?J;3CsSma ykVyi0@d^r?OXP+atIb89$gOk{@o{C;nnwX$JslAuo>r delta 569 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 HXJq~lZu+-A diff --git a/HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/81fd1417-9b73-4074-8733-8060f29e7cbb.vsidx b/HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/81fd1417-9b73-4074-8733-8060f29e7cbb.vsidx deleted file mode 100644 index 04e031f833aeaca11c625ab7855aabdfd9b05288..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3056 zcmY+FS!3H&5QT5s(6YAy%Dx1%#XwEjp$Q?5;@BpRWh6Nv#HExV)({6d4Fw7`5Y`qb z`wnI2r|`ftFZ~;R$q%DTy&K-7c$j$-haN-sbFrcTI_HQ?w+u_`J?u6lk5dZ_X6&v#Q zfjkVOL%EG1oCq7p&p~?%9yD%4-oM-8VIvsnIK6$UXQy-P&O!SHVW2$(_uKZlsElTO zZ!nO8I(}#)H~Jm~Us6E^|!tba(yt2exeWX>Ko{1 z!3q1+TX>M`Jzh~6#(=3W?qi@h;rBzZ(Xh{j;vAerzdW%2>_7-p?Ak1Hf6#{_MyBw7 ztGG>M4f@Xz&lI_@=|5XMM?6>DE}}P!!$vTkC!Q}}Anp_|6fY7l7B3Mm6)zJn7q1Yn z6t5D8#H+=Ec#U|ic%68?c!M}B7R4LIo5Y*NU1CYRMcggkD&8jEF5V&DDc&XCE#4#E zEAA0T#8L4+aZJ2l92d*tgcyjEB6gUq&y-jdYhqn|K%5pE;*8i7L$M`3C`Mu|CSqHh z73ai<#Ch>yaY5{e{9)yOd_>$QJ}T}P9}^eF$Hi29LVQwuN_<*;MtoLW5}y;7#jdy_ zJ}+isPh1u8wOjvd;tS$I@kQ|^@n!Ll_=@0Cmc4684rp$`nJT$SG1XU-@H({08Q4w_+6~M!1 zgy@JGK_igQYa*MySFAhV1(j8qO%0(DqNqjFlIe))sOgyLgz1zidynwG)V)ylO>IFF ztCpZP?V4%ZbPhU)(JAY53Zo^=@)-U&*O6%g}n91D`Lb)IFJ;5)9^HGJeYd@!4;}$Mciy+jYa=V;+Y#d;Yo2 F^IxDw4$lAp diff --git a/HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/f6cf1ad8-ea4d-4886-93ed-cf6ed311e04d.vsidx b/HRServer-Exporter/.vs/HRServer-Exporter/FileContentIndex/f6cf1ad8-ea4d-4886-93ed-cf6ed311e04d.vsidx deleted file mode 100644 index af3423f056b468bcca1a8dbe8a2a7fcb5effac61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 678 zcmZXSOHRWu6h&Y8|DpVUTc8W*43df<5?aM76EZ6vAR$sYP%&mRh$$n6EPx%b1s1`( z_DvXI+3z?v&-cZ#qxihNAo4OLzU2XOrHs18u(GZy%)~xi7FGG=Mz(NvTvkPr8|x<4 zo%Ei^rF*olQHrd*wfCA)y2^G&)rWhvZ^?J-hR)NTEs@Y?L_%+rM%T&zSE>YE<7{n0 z<%cD7KXnl#`+@yoj`E=Tc&dlz963+I19^+&61hySkgMbxxlV47ZE};`BDcvMa+lmA z_sIkDkUS!f$#*3hzP}@x^yO3{>1oV-G-BjTQn^qyRW(*M^}}e)bq(URMk51BbbYQd z*C%8nVkNwccaQaIz`O6Akd1YyIgp`Nf@9{@KVQs37BW&_t-fgCB=FbJ?gHeC{KOGx F`vr(bKyd&7 diff --git a/HRServer-Exporter/.vs/HRServer-Exporter/v17/.suo b/HRServer-Exporter/.vs/HRServer-Exporter/v17/.suo index 3b05b3752fd2fa4d211dcd622bb36c3561d1e951..3fe5331732bfa471b2a778c405d0a769dc1d791a 100644 GIT binary patch delta 690 zcmaiuPe{{Y7{{OY=NzUsXSKpvLAeD9$BT!&ziN`#e_2*nP|{Q+TVZc}KG4muT! zv>zBv^e2ccV+4jo!h&_O7o=pbaDckIxu_vQP3zt8i0-{*Nso2s;_mQ7`> z^mnT!d(PGKD6y=nM%Lv?+?ZK#PJK{85h;Yb|8~DH< z>TPfb@Pqw8e{sXQ*4l{o!uuM!%b9cCRn^w7hVKcfr{EcQ4qkwl&ZqV!Rq^bq^eVgL z3#h1l$mq6X9bxxl$`6&jGIH8}b7IW#9{#SXdp1;yMP5&}I}Zff)(L8W<7@|2%aPlw zTI;$#T7LuMO5`nk*$}x7+p!V9_veq-g^luR?p<;6sI*Y2umxjvuZ2(=yIFv$8;xqF0Wd z0}M9l6lHvpti?M3^s2|HOhu7l(q?@l{VjxHuzn+0;&PUj1sUa?XO)y(z>`O3$@bAI nFDJ{3#rMa~1$P|%yz}>ZeCtl&fnRPVn%BLH%heV_#0|UcQVn8ed#8N;EQvMH!*???5Am)OKi2!MFAO^`v11&6OnvVoPv<`$V6#zjg@n=~vLCm)dIob05zZ;=|uA_=BN1}uw2m=>8i F003hHN5udD diff --git a/HRServer-Exporter/HRServer/Controllers/HorseController.cs b/HRServer-Exporter/HRServer/Controllers/HorseController.cs index 8c0373a..d87bc7b 100644 --- a/HRServer-Exporter/HRServer/Controllers/HorseController.cs +++ b/HRServer-Exporter/HRServer/Controllers/HorseController.cs @@ -1,3 +1,4 @@ +using HRServer.Models; using Microsoft.AspNetCore.Mvc; namespace HRServer.Controllers @@ -12,11 +13,30 @@ namespace HRServer.Controllers { _logger = logger; } - - [HttpGet(Name = "GetWeatherForecast")] - public async Task> GetHorsesAsync() + [HttpGet("/api/getHorse/{id}")] + public IActionResult GetHorse ([FromRoute] int id) { - return new(); + var horse = HorseFactory.GetHorse((ulong)id); + if (horse == null) + return NotFound(new { Message = "Horse not found." }); + return Ok(horse); } + [HttpGet("/api/getHorseLoadState/{id}")] + public IActionResult GetHorseLoadState ([FromRoute] int id) + { + // Hole das Pferd aus der Factory + var horse = HorseFactory.GetHorse((ulong)id); + + // Überprüfe, ob das Pferd existiert + if (horse == null) + return NotFound(new { Message = "Horse not found." }); + + // Gib den Ladezustand des Pferdes zurück + return Ok(horse.LoadState); + } + /*[HttpGet("/api/setHorseBasicData/{id}")] + public IActionResult GetHorsesAsync([FromRoute] int id) + { + }*/ } } diff --git a/HRServer-Exporter/HRServer/Models/Horse.cs b/HRServer-Exporter/HRServer/Models/Horse.cs index 3c4418c..d38bce1 100644 --- a/HRServer-Exporter/HRServer/Models/Horse.cs +++ b/HRServer-Exporter/HRServer/Models/Horse.cs @@ -1,7 +1,228 @@ namespace HRServer.Models { + public enum Gender + { + Male, + Female + } + public static class HorseFactory + { + // Thread-safe Dictionary, um gleichzeitigen Zugriff zu ermöglichen + private static readonly Dictionary Horses = new(); + + // Methode, um ein Pferd nach ID zu suchen + public static Horse? GetHorse(ulong id) + { + // Verwende Dictionary.TryGetValue für bessere Performance und Lesbarkeit + return Horses.TryGetValue(id, out var horse) ? horse : null; + } + + // Methode, um ein Pferd hinzuzufügen oder zu aktualisieren + public static void AddOrUpdateHorse(Horse horse) + { + if (horse == null || horse.Id == null) + throw new ArgumentNullException(nameof(horse), "Horse or its ID cannot be null."); + + Horses[horse.Id.Value] = horse; + } + + // Methode, um alle Pferde zu holen (z. B. für Debugging oder Verarbeitung) + public static IReadOnlyDictionary GetAllHorses() + { + return Horses; + } + } + public class Horse { + // Basic Information + private ulong? _id; + private int? _age; + private string _horseName = string.Empty; + private string _gender = string.Empty; + private string _breed = string.Empty; + private string _link = string.Empty; + public ulong? Id + { + get => _id; + set + { + _id = value; + LoadState.BasicInfoLoaded = true; + } + } + + public int? Age + { + get => _age; + set + { + _age = value; + LoadState.BasicInfoLoaded = true; + } + } + + public string HorseName + { + get => _horseName; + set + { + _horseName = value; + LoadState.BasicInfoLoaded = true; + } + } + + public string Gender + { + get => _gender; + set + { + _gender = value; + LoadState.BasicInfoLoaded = true; + } + } + + public string Breed + { + get => _breed; + set + { + _breed = value; + LoadState.BasicInfoLoaded = true; + } + } + + public string Link + { + get => _link; + set + { + _link = value; + LoadState.BasicInfoLoaded = true; + } + } + + // Other Sections + private HorseSummary _summary = new(); + public HorseSummary Summary + { + get => _summary; + set + { + _summary = value; + LoadState.SummaryLoaded = true; + } + } + + private HorseTraining _training = new(); + public HorseTraining Training + { + get => _training; + set + { + _training = value; + LoadState.TrainingLoaded = true; + } + } + + private HorseGenetics _genetics = new(); + public HorseGenetics Genetics + { + get => _genetics; + set + { + _genetics = value; + LoadState.GeneticsLoaded = true; + } + } + + private HorseAchievements _achievements = new(); + public HorseAchievements Achievements + { + get => _achievements; + set + { + _achievements = value; + LoadState.AchievementsLoaded = true; + } + } + + private HorseHealth _health = new(); + public HorseHealth Health + { + get => _health; + set + { + _health = value; + LoadState.HealthLoaded = true; + } + } + + // Load State + public DataLoadState LoadState { get; set; } = new(); + + // Helper Methods + public bool IsAllDataLoaded() + { + return LoadState.IsAllDataLoaded(); + } + + public void PrintLoadState() + { + Console.WriteLine("Load State of Horse Data:"); + Console.WriteLine($"- Basic Info Loaded: {LoadState.BasicInfoLoaded}"); + Console.WriteLine($"- Summary Loaded: {LoadState.SummaryLoaded}"); + Console.WriteLine($"- Training Loaded: {LoadState.TrainingLoaded}"); + Console.WriteLine($"- Genetics Loaded: {LoadState.GeneticsLoaded}"); + Console.WriteLine($"- Achievements Loaded: {LoadState.AchievementsLoaded}"); + Console.WriteLine($"- Health Loaded: {LoadState.HealthLoaded}"); + } } -} + + // Class to track the loading state of data + public class DataLoadState + { + public bool BasicInfoLoaded { get; set; } = false; + public bool SummaryLoaded { get; set; } = false; + public bool TrainingLoaded { get; set; } = false; + public bool GeneticsLoaded { get; set; } = false; + public bool AchievementsLoaded { get; set; } = false; + public bool HealthLoaded { get; set; } = false; + + // Method to check if all data is loaded + public bool IsAllDataLoaded() + { + return BasicInfoLoaded && SummaryLoaded && TrainingLoaded && GeneticsLoaded && AchievementsLoaded && HealthLoaded; + } + } + + // Other classes + public class HorseSummary + { + public List RelatedIds { get; set; } = new(); + } + + public class HorseTraining + { + public string Training { get; set; } = string.Empty; + } + + public class HorseGenetics + { + public int GP { get; set; } + public Dictionary Features { get; set; } = new(); + public string Extension { get; set; } = string.Empty; + } + + public class HorseAchievements + { + public Dictionary Conformation { get; set; } = new(); + public string ShortConformation { get; set; } = string.Empty; + } + + public class HorseHealth + { + public string Fertility { get; set; } = string.Empty; + } +} \ No newline at end of file diff --git a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfo.cs b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfo.cs index 4640049..b5594b1 100644 --- a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfo.cs +++ b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("HRServer")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+61e6e23dae50c1f4f9adf20b24676e1fe61fe435")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+6e5ae3f9b3254f84dca052d06f64382fc35cc6d4")] [assembly: System.Reflection.AssemblyProductAttribute("HRServer")] [assembly: System.Reflection.AssemblyTitleAttribute("HRServer")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfoInputs.cache b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfoInputs.cache index 85325ed..53d083b 100644 --- a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfoInputs.cache +++ b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.AssemblyInfoInputs.cache @@ -1 +1 @@ -419ce3097d8083c4540b0d88268e23c0a89ac5f37fd5d769a90222609f0f847f +c249390f111095a716c75dcba28e2f2d1acdc90eb5e2495d35cb08b47c8606be diff --git a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.GeneratedMSBuildEditorConfig.editorconfig b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.GeneratedMSBuildEditorConfig.editorconfig index e3f8a1c..e10caf2 100644 --- a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.GeneratedMSBuildEditorConfig.editorconfig +++ b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.GeneratedMSBuildEditorConfig.editorconfig @@ -9,11 +9,11 @@ build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = HRServer build_property.RootNamespace = HRServer -build_property.ProjectDir = C:\Users\SvenK\source\repos\HRServer-Exporter\HRServer\ +build_property.ProjectDir = Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\ build_property.EnableComHosting = build_property.EnableGeneratedComInterfaceComImportInterop = build_property.RazorLangVersion = 8.0 build_property.SupportLocalizedComponentNames = build_property.GenerateRazorMetadataSourceChecksumAttributes = -build_property.MSBuildProjectDirectory = C:\Users\SvenK\source\repos\HRServer-Exporter\HRServer +build_property.MSBuildProjectDirectory = Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer build_property._RazorSourceGeneratorDebug = diff --git a/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.assets.cache b/HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.assets.cache index bb8da7de4bf0a117df0437ceeb4f241ffeafe1b2..9ce3a9111ed8f566fb7a63958d37d37a1200ec6f 100644 GIT binary patch delta 49 zcmV-10M7rW8>Sm5P)kQa3;+NCSm5P)kQa3;+NC%2tY