Auf der Suche nach einer möglichkeit ein Programm am WCF Host zu authentifizieren bin ich auf follgende Seite gestossen.
http://www.neovolve.com/post/2008/04/07/wcf-security-getting-the-password-of-the-user.aspx
Ein wirklich gute Sache 🙂
So ich habe ein Beispiel aus dem Internet geladen und wollte dies nun testen.
Beim ausführen des Testes kam dann follgende Meldung:
The location of the file or directory ‚c:\users\… .dll.config‘ is not trusted.
Was soll den das heissen?
Nach ein wenig suchen im Internet fand ich die Lösung:
http://blog.donnfelker.com/post/Frustrating-MS-Test-Issue-blah-blah-blah-is-not-trusted.aspx
Da übertreibt MS wohl ein wenig mit der Sicherheit.
Da hab ich mal wieder lange gesucht und als ich endlich ein Zertifikat hatte ging es nicht :
„Das angegebene Zertifikat muss einen privaten Schlüssel aufweisen, der den Schlüsselaustausch ermöglicht. Der Prozess muss über Zugriffsrechte für den privaten Schlüssel verfügen.“
Also nochmals über die Bücher bis ich endlich den richtigen Befehl hatte:
makecert -r -sr LocalMachine -ss My -a sha1 -n "CN=localhost" -sky exchange -pe
Das -r steht dafür das das Zertifikat selbst signiert ist.
-sr für den SpeicherContainer (CurrentUser oder LocalMachine)
-ss für den Speicherort im Container
-n über den Servernamen (in meinem Fall der Localhost)
-sky markiert den Privaten Schlüssel das der für den Schlüsselaustausch verwendet werden darf.
-pe das der Private Schlüssel auch im SpeicherContainer abgelegt wird.
Nach dem ausführen muss man das Zertifikat noch in den Speicher der Vertrauenswürdigen Stammzertifikaten kopieren damit das Zertifikat gültig ist.
Und siehe da, der WCF Host aktzeptiert meinen Schlüssel.
So
Es hat mir einfach keine Ruhe gelassen. Ich habe nun eine BindingListView die, die IBindingListView implementiert geschrieben.
Mit dieser ist das einfache Sortieren und auch das Filtern möglich. Beim verändern der Daten werden immer die Orginaldaten verändert und die gefilterte Liste neu aufgebaut.
Der Filter kann im Moment erst OR Verknüpfungen verarbeiten die mit Komma getrennt sind :
Vorname=Marco,Nachname=Müller
Es werden also nun alle Marco und alle Müller angezeigt.
Das erweiterte Sortieren ist nicht möglich.
Gruss Marco
Also nach ein wenig ausprobieren bin ich auf follgendes Problem gestossen.
Wenn ich eine Datagridview eine BindingList als Datasource zuweise, kann ich diese nicht sortieren oder Filtern.
Nun da ich doch gerne eine Sortiermöglichkeit hätte habe ich diese mal im plementiert.
Die Filtermöglichkeit habe ich noch nicht implementiert.
Da ich ein verändern, löschen und hinzufügen der Daten in der Liste ermöglichen will und nicht jedesmal die Liste neu laden will wenn sich der Filter verändert.
Dafür müsse ich eine WrapperKlasse schreiben die alle Funktionen implementiert.
Es gibt unter SF ein Projekt das zum Ziel hat eine BindingListe zu erstellen die das IBindingListView Interface implementiert.
Damit ist sortieren und auch filtern möglich. Soweit ich gesehen habe ist aber ein hinzufügen von Elementen zur Orgnialliste nicht möglich.
http://blw.sourceforge.net/