b3c4d95c6a
bump to 1.0.1
2025-08-27 16:16:56 +02:00
6a4817cbcd
feat(Proxy): add logic tro enable swagger in production
2025-08-27 16:16:23 +02:00
a63bccf47d
add ISS profiler
2025-08-19 09:17:11 +02:00
33df010573
Update zur Unterstützung mehrerer Frameworks (.NET 7, 8 und 9)
2025-08-18 17:52:32 +02:00
6433e0b39b
add ExceptionHandlingMiddleware
2025-08-18 17:30:28 +02:00
c14e6033cb
add NLog
2025-08-18 17:26:47 +02:00
df089af385
feat(EConnectClient): Curl-Logging für GET-Requests hinzugefügt
...
- Curl-Log wird jetzt auch bei `GetAsync` und `GetListAsAsyncEnumerable` ausgeführt.
- Bisher wurde Logging nur bei `PostAsync` durchgeführt.
- Hilft beim Debuggen von HTTP-Requests und beim Nachvollziehen von API-Aufrufen.
2025-08-18 17:21:12 +02:00
8b9f7b911d
fix(LogExtensions): Fehlerbehandlung zu den LogCurl-Erweiterungsmethoden hinzufügen
...
Umschließt die LogCurl-Methoden mit try-catch-Blöcken, um zu verhindern, dass unerwartete
Ausnahmen die Anwendung beim Generieren oder Protokollieren von
cURL-Darstellungen von HTTP-Anfragen zum Absturz bringen. Fehler werden nun mit
logger.LogError protokolliert.
2025-08-18 17:14:44 +02:00
49c4960f05
refactor: Curl-Logging erweitert und String-Truncation eingeführt
...
- Entfernt manuelles Abschneiden von Curl-Strings und ersetzt durch die neue `Truncate`-Extension.
- Standardwert für `uri` im zweiten LogCurl-Overload auf "/" gesetzt.
- Verbessert Lesbarkeit und Wiederverwendbarkeit der Logik für Curl-Strings.
2025-08-18 17:11:14 +02:00
66cfe0525c
perf(logging): use AsSpan for substring in LogCurl to reduce allocations
...
- Replaced `.Substring(0, maxLength)` with `AsSpan(0, maxLength)` and `string.Concat`.
- Improves performance by avoiding temporary string allocations when truncating cURL output.
- Maintains existing logging behavior with truncated cURL strings.
2025-08-18 16:49:49 +02:00
e9a7ef910f
Refactoring (LogExtensions): Ersetzen der benutzerdefinierten LogCurlAsync durch eine auf HttpClientToCurl basierende Implementierung
...
- Manuelle cURL-Zeichenfolgenkonstruktion in `LogExtensions` entfernt.
- Überladungen von `LogCurl` unter Verwendung von `HttpClient.GenerateCurlInString` eingeführt.
- Unterstützung für das Kürzen langer cURL-Ausgaben mit `maxLength` hinzugefügt.
- Parameter vereinfacht und Wartbarkeit verbessert.
2025-08-18 16:48:23 +02:00
0273beb6f8
add to-do
2025-08-18 15:36:11 +02:00
20b5b8124d
refactor(EConnectClient): Vereinfachung der Antwortverarbeitung in EConnectClient durch Verwendung von bedingten Ausdrücken und Entfernen der ungenutzten PostAsync-Überladung
2025-08-18 15:31:56 +02:00
beadc3c4bb
refactor(EConnectClient): GetMimeType hinzufügen, um den MIME-Typ basierend auf dem Dateinamen zuzuweisen
2025-08-18 15:21:05 +02:00
9256dc6baf
feat(econnect): Aktualisierung von PostAsync zur Verwendung des Inhaltstyps „application/pdf“ und Vereinfachung der Erstellung von Mehrteilformularen
...
- Generischer Header „multipart/form-data“ wurde durch „application/pdf“ für Dateiinhalte ersetzt
- Erstellung von Mehrteilformularen wurde zur Verbesserung der Übersichtlichkeit und Korrektheit umstrukturiert
- Es wurde sichergestellt, dass Dateistream und Dateiname direkt zum Mehrteilformular hinzuge
2025-08-18 15:08:31 +02:00
e8fd49d75d
feat(PostDocumentRequest): update to forward stream instad of whole content
2025-08-18 14:53:20 +02:00
b5082daa1a
feat(EConnectClient): update PostAsync to handle Stream instead of StreamContent
2025-08-18 14:46:00 +02:00
48a69f884e
feat(LogExtensions): add full url and use placeholder for binary-data
2025-08-18 13:15:31 +02:00
b3a27ba24f
feat(LogExtensions): Erstellen und Hinzufügen der Methode „LogCurlAsync“ zur Log-Curl-Methode der Anfrage
2025-08-18 12:42:16 +02:00
a7f02e1079
fix(OrderController): Aktualisierung, um StatusCodeInt als Statuscode zurückzugeben
...
- Liste der Pfad-Anforderungsrouten entfernen
2025-08-18 12:31:48 +02:00
265862d63d
fix(EConnectClient): Behandlung leerer HTTP-Antwortinhalte
...
- Es wurden Überprüfungen für `ContentLength > 0` hinzugefügt, bevor Antwortinhalte in den Methoden GetAsync, GetListAsAsyncEnumerable und PostAsync deserialisiert werden.
- Stellt sicher, dass null zurückgegeben wird, anstatt zu versuchen, leere Antworten zu deserialisieren, wodurch potenzielle Laufzeitfehler vermieden werden.
2025-08-18 11:16:16 +02:00
060ba64268
feat(EConnectClient): Logik hinzufügen, um zu behandeln, wenn bei einem Fehler kein Inhalt vorhanden ist
2025-08-18 11:03:28 +02:00
21cc348c6c
feat(PostDocumentRequest): Erstellen UploadDocumentRequest, um den Dokumenten-Upload-Prozess von PostDocumentRequest zu trennen.
...
- Aktualisieren den Controller, um den Upload-Prozess zu verarbeiten.
2025-08-18 10:48:15 +02:00
ccecf47dca
feat(OrderController): add PostDocument to hand document upload process
2025-08-18 10:26:36 +02:00
6044d0bcb6
add PostDocumentRequest
2025-08-15 15:41:53 +02:00
aaaaf283ee
add method to post StreamContent
2025-08-15 15:34:31 +02:00
2877d62f95
create common AddQueryString method
2025-08-15 15:15:29 +02:00
3ca148f341
feat(EConnectClient): add PostAsync method without body
2025-08-15 15:06:38 +02:00
ad9f7ef7e4
update to use get-init instead of input parameter
2025-08-15 15:03:42 +02:00
4bb6a6cf18
Add response without data
2025-08-15 14:51:29 +02:00
e85a4986e6
refactor(ClientOptions): Vereinfachung der Initialisierung von JsonSerializerOptions
...
- Null-Prüfung und verzögerte Initialisierung von JsonSerializerOptions entfernt
- Standard-JsonSerializerOptions mit PropertyNameCaseInsensitive = true festgelegt
- DateTimeConverter immer hinzufügen, wenn JsonSerializerDateFormat festgelegt ist
2025-08-15 14:24:05 +02:00
1ed1937c40
fix(appsettings): move JsonSerializerDateFormat
2025-08-15 14:14:47 +02:00
3082c0b77c
feat(EConnectClient): add json serilization options to EConnectClient
2025-08-15 14:10:19 +02:00
6836b422a4
feta(ClientOptions): add JsonSerializerDateFormat and JsonSerializerOptions.
2025-08-15 14:03:09 +02:00
6b2c897e5b
feat(DateTimeConverter): add to handle custom date time formatter http response deserilization
2025-08-15 13:49:37 +02:00
db3137ef9d
feat(order): Aktualisierung von GetDocumentRequest, um mehrere OrderDocuments zurückzugeben
...
- Antworttyp von OrderDocument zu IEnumerable<OrderDocument> geändert
- Handler aktualisiert, um GetAsync mit IEnumerable<OrderDocument> aufzurufen
2025-08-15 13:02:11 +02:00
02b4aa342a
Aktualisieren den Standardwert für apiVersion auf 1
2025-08-15 12:41:27 +02:00
57b273cde4
fix(ClientOptions): Die Eigenschaft „QueryStrings” in „DefaultQueryStrings” umbenennen.
2025-08-15 12:33:33 +02:00
aa192626c2
fix(GetExtensions): set default apiVersion to 1
2025-08-15 12:25:33 +02:00
9142b9c49a
feat(OrderController): create and add GetDocument endpoint
2025-08-15 11:47:40 +02:00
f994781713
feat(client): Implementierung von GetDocumentRequestHandler mit IEConnectClient-Integration
2025-08-15 11:19:50 +02:00
65d59c6c67
feat(GetDocumentRequest): created to handle order-document get request
2025-08-15 11:06:48 +02:00
32b631a6c2
refactor(ClientOptions): add AfterHttpInit-property and bind to dependency injection
2025-08-15 10:52:39 +02:00
3eacbd89f7
refactor(DependencyInjection): AddEConnectClient in AddClientServices umbenennen
2025-08-15 10:41:26 +02:00
3af571ea37
refactor(ClientOptions): move to inf layer
2025-08-15 10:39:25 +02:00
c21e4a93ef
refactor(appsettings): apiKey in QueryStrings verschieben
2025-08-15 10:24:01 +02:00
dd60555ed3
feat(ClientOptions): add QueryStrings-property.
...
- add logic to handle global query strings on EConnectClient
2025-08-15 10:20:33 +02:00
a7cbced3e6
refactor(ObjectExtensions): add and bind ToCamelCase-method
2025-08-15 10:07:59 +02:00
786086a260
refactor(EConnectClient): update to add null-check
2025-08-15 09:57:40 +02:00
087df71b7b
refactor(EConnectClient): queryParams-Eingabe zu get-Methoden hinzufügen
2025-08-15 09:46:29 +02:00