Laden...

Profil von DecaTec

myCSharp.de - Member Mitglied seit
DecaTec
myCSharp.de - Member
13
Themen
210
Beiträge
Dabei seit
01.03.2005
Letzte Aktivität
vor 6 Jahren
Erstellt vor 6 Jahren

Version 1.1.8.0 verfügbar:

Nach langer Zeit mal wieder ein kleines Update.

**Changelog:***HTTP/2 is used by default now. *Updated dependencies.

Projekt-Homepage:
Portable WebDAV Library auf GitHub

Download:
Direkt über die Projektseite, oder über NuGet.

Bin für Feedback, Verbesserungsvorschläge, o.ä. immer dankbar...

Links *Project home (GitHub) *Dokumentation (online) *Dokumentation (offline, CHM)

Erstellt vor 7 Jahren

Version 1.6.1 steht zum Download bereit

Dies ist nur ein Security-Update wegen einer Verwundbarkeit der verwendeten DotNetZip Libraries.

**Changelog:***Referenzen auf DotNetZip aktualisiert (Sicherheitslücke in alten DotNetZip Bibliotheken)

Update:
Die neue Version kann als Update einfach über eine bestehende Version installiert werden, die Einstellungen bleiben dabei erhalten.
Am einfachsten geht das über die integrierte Update-Funktion. Diese findet und installiert das Update automatisch.
Es kann sein, dass bei der Installation eine SmartScreen-Warnung erscheint. Dies liegt lediglich daran, dass die aktuelle Programmversion nicht nicht häufig herunter geladen wurde und dementsprechend noch unbekannt ist.

Download:
Den Download und weitere Infos gibt es wie immer auf der Projektseite

Feedback/Kritik/Verbesserungsvorschläge sind dabei immer erwünscht!

Erstellt vor 7 Jahren

Hi,

ich vermute mal, du meinst, dass direkt eine Exception geworfen werden soll, wenn eine WebDavSession mit User Credentials angelegt wird. Das ist so erst einmal nicht möglich, da beim anlegen einer WebDavSession keine HTTP-Request ausgeführt wird.

Erst wenn ein tatsächlicher Request ausgeführt wird (z.B. ListAsync), dann kommen die Credentials "zum Einsatz" (diese werden immer mit jedem HTTP-Request übermittelt).

In diesem Fall bekommst du auch eine WebDavException, mit den genauen Infos, was schief gelaufen ist (also HTTP 401):> Fehlermeldung:

Error while executing ListAsync (wrong response status code). Expected status code: 207 (MultiStatus); actual status code: 401 (Unauthorized)

Um das manuell abzufangen, könntest du direkt nach dem Instantiieren der WebDavSession ein 'ExistsAsync' (z.B. auf die Base-URI) aufrufen. Wenn das dann auf Grund von falschen Credentials schief geht, könnte man im Client-Programm eine Fehlermeldung o.ä. bringen.

Erstellt vor 8 Jahren

Nein, ehrlich gesagt nicht.
Ich hatte in der letzten Zeit auch wenig Zeit für das Projekt. Man könnte hier zugegebenermaßen noch so viel verbessern und Features hinzufügen.

Es bleibt im Moment nur ein Hobby-Projekt, welches vielleicht dem einen oder anderen hilft, einen Rechner nur bei Bedarf laufen zu lassen. Lass dich nicht vom Wörtchen "Server" im Namen verwirren: Ja, ich habe das Programm für meinen Home-Server entwickelt, es eignet sich allerdings auch hervorragend für alle Arten von (Windows-)PCs.

Erstellt vor 8 Jahren

Windows Server Advanced Power Management nun als Open Source auf GitHub verfügbar

Nachdem ich bereits mit anderen Projekten gute Erfahrungen mit GitHub sammeln konnte, habe ich mich dazu entschieden, auch WSAPM als Open Source Software über GitHub zur Verfügung zu stellen.

Das Repository ist hier zu finden: Wsapm @ GitHub

Daran angeschlossen sind einzelne Repositories für WSAPM-Plugins:*Wsapm-RemovableDevices @ GitHub *Wsapm-LocalPrintersOnline @ GitHub

Wer ein eigenes Plugin für das Programm entwickeln möchte, findet im Repository Wsapm-PluginTemplates @ GitHub Solution-Templates.

Code-technisch ist WSAPM bestimmt kein Vorzeigeprojekt (z.B. kein MVVM), trotzdem kann sich jeder den Sourcecode ansehen und ggf. Änderungen/Verbesserungen über GitHub einbringen.

Erstellt vor 8 Jahren

Version 1.0.1.0 verfügbar:

Diesmal nur ein kleines Update, welches die Verwendung unter Xamarin betrifft.
Bei Xamarin verhalten sich einige Eigenschaften der Klasse Uri nicht wie unter Windows. Daher war hier eine kleine Anpassung notwendig.

**Changelog:***Bugfix [Xamarin]: WebDavSession.ListAsync returned wrong URLs when used with folders containing spaces. *Bugfix [Xamarin]: WebDavSession.ListAsync returned the containing folder when used with folders containing spaces.

Projekt-Homepage:
Portable WebDAV Library auf GitHub

Download:
Direkt über die Projektseite, oder über NuGet.

Bin für Feedback, Verbesserungsvorschläge, o.ä. immer dankbar...

Links *Project home (GitHub) *Dokumentation (online) *Dokumentation (offline, CHM)

Erstellt vor 8 Jahren

Version 1.0.0.0 verfügbar:

So, nachdem noch eine wichtige Änderung eingeflossen ist (Zugriff auf Properties, die der Library zunächst einmal unbekannt sind), konnte nun v1.0.0.0 veröffentlicht werden. Daneben gibt es aber noch weitere Neuerungen:

**Changelog:***Extension of the Portable WebDAV Library's WebDAV object model: Properties which are not defined in RFC 4918, RFC 4331, Additional WebDAV Collection Properties or IIS WebDAV specification can now also be accessed through the library's WebDAV object model. These unknown properties are exposed as XML (when using WebDavClient) or are handled by the class AdditionalProperties (when using WebDavSession/WebDavSessionItem). See the documentation for instructions on how to use unknown WebDAV properties with the library. *Renamed WebDavSesionListItem to WebDavSessionItem. *WebDavSession now supports Proppatch operations with the methods UpdateItemAsync and UpdateItemsAsync: Use the ListAsync methods to retrieve WebDavSessionItems, then change the properties of these items. Finally you can use the methods UpdateItemAsync/UpdateUtemsAsync of WebDavSession passing the changed WebDavSessionItems in oder to update the item's properties on the server (Proppatch). Note that not all WebDAV servers support Proppatch for all properties. So maybe you will not be able to change properties of a WebDAV element with these methods. *The methods of WebDavSession (e.g. copy, mode, delete, etc.) can now be used by specifying a WebDavSessionItem.

  • New methods for WebDavSession (GetSupportedPropertyNamesAsync) to retrieve a list of WebDAV properties supported by a WebDAV item.

*The library now contains a DebugHttpMessageHandler: This handler can be used for WebDavClient and WebDavSesion in order to get the request/response (and their content) printed on the debug console. Note that this message handler should not be used in a productive environment. *The constructors expecting credentials now use the interface ICredentials for credentials. *Bugfix: UriHelper.CombineUri sometimes threw exception when both URIs were the same.

Projekt-Homepage:
Portable WebDAV Library auf GitHub

Download:
Direkt über die Projektseite, oder über NuGet.

Bin für Feedback, Verbesserungsvorschläge, o.ä. immer dankbar...

Links *Project home (GitHub) *Dokumentation (online) *Dokumentation (offline, CHM)

Erstellt vor 8 Jahren

Version 0.9.0.0 verfügbar:

Wir kommen v1.0 langsam näher. 😉

**Changelog:***The library now implements RFC 4918, RFC 4331, Additional WebDAV Collection Properties and a some WebDAV properties specific to IIS WebDAV. *New properties available for WebDavSessionListItem: Keep in mind that not every WebDAV server supports the same properties. Often a server only supports a subset of the specifications or even adds additional properties. So, when a property of a WebDavSessionListItem is null, the WebDAV server may not support these properties.

  • Some properties of WebDavSessionListItem are strongly-typed now (DateTime and numeric values).
  • WebDavSession now exposes some protected members, so that the class can be overridden for special purposes (e.g. when new types should be added to the WebDAV object model in a project).

Projekt-Homepage:
Portable WebDAV Library auf GitHub

Download:
Direkt über die Projektseite, oder über NuGet.

Bin für Feedback, Verbesserungsvorschläge, o.ä. immer dankbar...

Links *Project home (GitHub) *Dokumentation (online) *Dokumentation (offline, CHM)

Erstellt vor 8 Jahren

Version 0.8.0.0 verfügbar:

Seit der letzten Version hat sich wieder einiges getan. Ich habe endlich eine Lösung gefunden, um vernünftige Unit Test schreiben zu können. Das bisherige Problem war, dass es lediglich Unit Integration Tests hab, die gegen einen konkreten WebDAV-Server gefahren wurden. Da nicht jeder WebDAV-Server die gleichen Features unterstützt, war es hier immer etwas schwierig, die "richtigen" Tests laufen zu lassen.
Ich verwende intern (nur für die Unit Tests) nun die Library mockhttp. Das ganze ist zwar etwas umständlich zu bedienen, das liegt allerdings an den bescheidenen Mocking-Fähigkeiten der Klasse HttpClient (kein Interface).
Vielleicht ist das ja mal für jemanden interessant. 😁

**Changelog:***When using WebDavClient.DownloadFileWithProgressAsync, the passed Stream does not get disposed automatically. Disposing of this Stream is up to the client calling this method. *Strongly typed versions of Lock-Token formats as defined in WebDAV specification. *When using the Portable WebDAV Library on Xamarin, there was a problem when relative URLs (strings) where used (e.g. webDavSession.ListAsync(@"/folder")). *When using WebDavSession, a base URL (string) can now be specified. *The 'Translate' header is always set to 'f' for IIS WebDAV serving unmapped file types (see https://msdn.microsoft.com/en-us/library/cc250063.aspx). *Bugfix: When using WebDavSession with BaseUri and calling methods passing only the relative Uri/URL to a file, these operations always failed. *Bugfix: When using WebDavSession.UploadFileWithProgressAsync with a URL, there was a stack overflow exception because the method called itself instead of the correct overload.

Projekt-Homepage:
Portable WebDAV Library auf GitHub

Download:
Direkt über die Projektseite, oder über NuGet.

Bin für Feedback, Verbesserungsvorschläge, o.ä. immer dankbar...

Links *Project home (GitHub) *Dokumentation (online) *Dokumentation (offline, CHM)

Erstellt vor 8 Jahren

Puh, schon lange keine Updates mehr gepostet, es hat sich allerdings einiges getan:

Version 0.7.0.0 verfügbar:

Die Portable WebDAV Library ist nun eine .NETStandard 1.1 Library.
Als "Weiterentwicklung" des Konzepts der Portable Class Libraries ist .NETSTandard/.NET Core zunächst einmal plattformunabhängig. D.h. die Library kann nun prinzipiell neben Windows Devices auch auf Liniux/MacOS zum Einsatz kommen.

Ein großer Vorteil an der neuen Version ist, dass die Library nicht mehr zweigeteilt ist (NetFx/UWP) - eine Assembly für alles!
Damit dies möglich ist, waren ein paar Änderungen notwendig:
*Für bisherige Verwender des NetFx-Parts ändert sich fast nichts, da die .NETStandard-Version auf System.Net.Http.HttpClient basiert (wie zuvor auch die NetFx-Version). *Upload/Download mit Fortschritt ist nun direkt in der Portable WebDAV Library implementiert, d.h. kann nun auch in .NET Framework-Projekten (ohne Umwege wie bisher) verwendet werden. Dazu gibt es neue Methoden der Klassen WebDavSession und WebDavClient. Dazu habe ich hier habe ich auf GitHub ein kurzes HowTo veröffentlicht. *Etwas umstellen müssen sich die Verwender des (ehemaligen) UWP-Parts der Library: Weil im Untergrund nun System.Net.Http.HttpClient verwendet wird, hat sich die Schnittstelle nun geringfügig geändert. Allerdings sollten sich die dafür notwendigen Änderungen in Grenzen halten.

Hier nochmal das komplette Changelog (diesmal auf Englisch):*The library now targets .NETStandard 1.1 (.NET Core) and can be used on any platform supporting .NETStandard 1.1. *Due to .NETStandard support, the library is not separated into two parts (UWP/NetFx) anymore. One library for all the target platforms. *Breaking change: The whole library is now based on System.Net.Http.HttpClient. Therefore, there are some changes in the API (e.g. method signatures). *Upload/download with progress is generally supported, even on projects targeting .NET Framework (formerly the NetFx part of the library). *The xml:lang attribute is now supported for prop elements.

Projekt-Homepage:
Portable WebDAV Library auf GitHub

Download:
Direkt über die Projektseite, oder über NuGet.

Bin für Feedback, Verbesserungsvorschläge, o.ä. immer dankbar...

Links *Project home (GitHub) *Dokumentation (online) *Dokumentation (offline, CHM)

10 von 210 Beiträgen