-
ACHTUNG - NEUES BLOG
Ab sofort steht unter http://devtyr.norberteder.com mein neues Blog zur Verfügung. Dieses Blog wird nicht weiter betreut, bleibt aber erhalten. Neue Eintr%auml;ge erfolgen nur mehr im neuen Blog. Kommentare werden ebenfalls nicht mehr behandelt. Wer weiterhin meinen Einträgen und Aktivitäten folgen möchte, möge bitte RSS-Feeds, Verlinkungen etc. an die neue Location anpassen.
|
Mono 1.2 wird für den heutigen Tag erwartet
09.11.06 - Base Framework Beitrag von Norbert Eder| | Laut einer Meldung von Golem, welche sich Microsofts Entwicklermesse TechEd in Barcelona bezieht, sollte Mono 1.2 im Laufe des Tages erscheinen.
Mono 1.2 soll eine Unterstützung für Windows Forms mitbringen, wodurch eine Portierung erleichtert werden soll.
Für Mono-Interessierte empfiehlt es sich, heute des öfteren auf die Projekt Website zu sehen.
| | | Kommentar hinzufügen
- 2 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Windows Live Writer Blog
09.11.06 - Community, Internet Beitrag von Norbert Eder
.NET Serialisierung und Versionierung
09.11.06 - .NET, Base Framework Beitrag von Norbert Eder| | Bei Verwendung der .NET Serialisierung stellt sich bei einer Änderung von zu serialisierenden Objekten oft die Frage, wie diese auf der Gegenseite behandelt werden. Um Probleme beim Deserialisieren auf der Gegenseite zu vermeiden, können die zusätzlichen Eigenschaften mit unterschiedlichen Attributen versehen werden, um dieser Falle Herr zu werden.
Hier die einzelnen Attribute und welche Bedeutung ihnen zukommt:
[NonSerialized()]
Dieses Attribut gibt an, dass die entsprechende Eigenschaft nicht serialisiert wird.
[OptionalField]
Damit wird die entsprechende Eigenschaft als optional gekennzeichnet. Sendet nun beispielsweise eine ältere Anwendungsversion das Objekt serialisiert zu einer neueren Version, wird das Fehlen der Eigenschaft einfach ignoriert.
[OnDeserializing]
Dieses Attribut wird nicht bei Eigenschaften gesetzt, sondern nur bei einer Methode - und zwar bei ausschließlich einer Methode pro Klasse. Dies wird hauptsächlich für Versionierungszwecken getan. Die Damit gekennzeichnete Methode hat nun die Möglichkeit in den Serialisierungsprozess einzugreifen und die fehlenden Werte zu setzen.
Weitere Informationen und auch Beispiele zu diesen Attributen können durch den MSDN Artikel Version Tolerant Serialization bezogen werden.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Microsoft Office Compatibility Pack
08.11.06 - Microsoft Office Beitrag von Norbert Eder| | Seit einigen Tagen gibt es das Microsoft Office Compatibility Pack [1] für die neuen Word, Exel und Powerpoint 2007 Formate. Durch diese Erweiterung ist es nun möglich, unter Office XP und Office 2003 die 2007er Formate zu lesen und zu bearbeiten. Die entsprechenden Viewer können somit ebenfalls das neue Format lesen.
Derzeit steht der Download in der englischen Version zur Verfügung. Eine deutsche Version wird wohl bald erscheinen.
Download Microsoft Office Compatibility Pack
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Update: Settings dynamisch in Datenbank speichern
08.11.06 - Tools, SPF Beitrag von Norbert Eder
Settings dynamisch in Datenbank speichern
07.11.06 - Tools, SPF Beitrag von Norbert Eder| | Oft müssen unterschiedlichste Settings zu unterschiedlichen 'Themengebieten' in der Datenbank persisiert werden. Dies passiert mehr oder weniger sauber und oft auch nicht an einer einzigen Stelle. Hier eine kleine Lösung, mit der dies dynamisch erledigt werden kann.
Ausgangspunkt
Ausgegangen wird von unterschiedlichsten Settings, die in einer einzigen Tabelle persistiert werden sollen.
Lösung
Dieses Beispiel geht von einer MS SQL Datenbank namens Test aus. Diese enthält eine Tabelle tProperty, welche wie folgt aufgebaut ist:
In der angehängten Solution befindet sich ein Basis-Objekt für alle zu persistierenden Settings. Alle davon abgeleiteten Objekte können in die Tabelle tProperties übertragen werden. Unter Fullname wird der volle Name inkl. Namespace des jeweiligen Objekt-Types geschrieben. Dieser ist notwendig, um das entsprechende Objekt wieder erstellen zu können. PropertyName stellt den entsprechenden Eigenschaften-Namen dar. Last but not least findet sich die Spalte PropertyValue. Diese enthält den Wert der jeweiligen Eigenschaft als string.
Ein mögliches Ergebnis sieht so aus:
Zuständig für die Umwandlung und der Persisiterung in der Datenbank ist die Klasse PropertySaver. Diese ermöglicht nicht nur das Speichern, sondern auch das Lesen, Einfügen, Aktualisieren und Löschen von Daten. Einfügen und Aktualisierung sind nicht öffentlich zugängig, sondern werden generell durch die Methode Save zur Verfügung gestellt.
Wichtig ist, dass dem Objekt vom Typ PropertySaver der ConnectionString für das DBMS übergeben werden muss. Dieser ist vor einem Test anzupassen, als auch die Test-Datenbank und die Tabelle anzulegen.
Projektseite Settings Persistence Framework
Edit: Das Dynamic Property Saver Beispiel wurde unbenannt auf Settings Persistence Framework (SPF) und ist ab sofort auf CodePlex verfügbar.
| | | 1 Kommentar
- 777 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Office 2007 Preisliste ... und Entwickler?
06.11.06 - Microsoft Office Beitrag von Norbert Eder| | Wie beispielsweise hier erwähnt, gibt's mittlerweile die Preise für die unterschiedlichsten Office 2007 Versionen.
Meine Frage nun: Wie sieht es mit den Entwicklern aus? Es gäbe ja viele Add-Ins, Tools etc. zu entwickeln, die die tägliche Arbeit um einiges erleichtern würde - und zwar für sehr viele Anwender. Aber muss der Entwickler, nur um ein derartiges Teil zu entwickeln auch brav tief in die Tasche greifen? Sieht fast so aus ...
Hier würde ich es durchaus als sinnvoll erachten, dass es eine eigene Entwickler-Version gibt und das zu einem fairen Preis. Schließlich sollte ja nicht gleich jedes Fuzzi-Addin 100 Euro kosten ...
Wäre schade drum.
| | | 4 Kommentare
- 686 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Visual Studio 2005: Default Browser setzen
06.11.06 - Base Framework, ASP.NET, Visual Studio Beitrag von Norbert Eder| | Ich hab es schon irgendwann einmal irgendwo gepostet, aber jetzt auf die Schnelle nicht gefunden, daher an dieser Stelle, damit ich es selbst nicht schon wieder vergesse.
Visual Studio 2005 öffnet gerne den Default-Browser für's Debuggen und das muss natürlich nicht immer der Internet Explorer sein (oder man möchte explizit einen anderen Browser wählen). Dazu sind folgende Schritte notwendig.
Debugging stoppen, eine ASPX-Datei des Web-Projektes öffnen. Danach auf File/Browse With ... dadurch erscheint der folgende Dialog:
Hier nun den gewünschten Browser auswählen, als Default setzen und auf Browse klicken. Ab sofort wird dieser Browser für die Debugging-Sessions verwendet.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Frauen in der IT
06.11.06 - Entwicklung, Diskussionen Beitrag von Norbert Eder| | Nein, jetzt kommt kein Witz, sondern ein wirklich ernstes Thema.
Ich kenne einige Frauen die in der IT beispielsweise als Softwareentwickler tätig sind und viele klagen über dieselben Probleme. Dies fängt bei Mobbing an und geht hin bis zur unstellten Unfähigkeit, fehlendes Logik-Verständnis usw. Männer werden in dieser Branche immer noch als die besseren Fachkräfte angesehen und genauso behandelt.
Bei genauerem Hinsehen ist dem aber oft nicht so. Schwarze Schafe gibt es überall und pickt man sich diese aus dem Haufen der Entwickler, stehen wir Männer vermutlich ganz schön dumm da.
Was ich aber damit sagen will ist folgendes: Wir sollten uns alle am Riehmen nehmen uns es ausnahmsweise mal so halten, wie es auch der Computer tut: Er macht auch keinen Unterschied, nur weil die Person, die in die Tasten haut, Brüste hat. Sauberer, korrekter Code ist gefragt und das schaffen auch Frauen.
Meiner Erfahrung nach sind Frauen einfach wichtig für ein Team, weil sie uns Männer wieder auf den Boden der Realität holen und für Ausgleich sorgen. Kein Ding, welches abschätzend behandelt werden muss.
Es wäre nur allzu schön, wenn sich die paar wenigen Pseudo-Machos darüber Gedanken machen würden und vor dem nächsten Spruch vielleicht einmal kurz ihr Hirn einschalten.
Es war mir ein Anliegen, das los zu werden!
| | | 10 Kommentare
- 677 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Menüs dynamisch mit Hilfe einer XML Datei erstellen
03.11.06 - .NET, Base Framework Beitrag von Norbert Eder| | In manchen Fällen macht es Sinn, bestimmte Teile einer Anwendung dynamisch erstellen zu lassen. Ob es sich dabei um Menüs handelt, um Eingabefelder, oder auch anderen Dingen. Immer wieder stößt man auf entsprechende Fragen, oft mit keinem wirklich gutem Beispiel, vor allem für .NET Newcomer ;-)
Hier nun ein Beispiel für das dynamische Erstellen eines Menüs aus einem XML File heraus.
Wie funktioniert das?
Die XML-Datei beschreibt die Hauptmenü-Einträge als auch die Untermenüs. Informationen wie Name, Text, welche Methode welcher Klasse bei einem Klick aufgerufen werden soll, sowie ob der Menüeintrag beim Startup der Anwendung verfügbar ist, werden darüber gesteuert.
Für jeden Hauptmenü-Eintrag existiert eine eigene Klasse, welche die entsprechenden Methoden zur Verfügung stellt. Für diese werden über den DynamicMenuHandler automatisiert Delegates erstellt, die das Click-Ereignis an diese Methoden weiterleiten und den dahinterliegenden Code ausführen.
Die gleiche Vorgehensweise kann auch für andere Zwecke verwendet (missbraucht) werden.
Download Dynamic Menu Creator Beispiel
Sollten zu diesem Beispiel Fragen auftauchen, dann können diese natürlich über die Kommentar-Funktion gestellt werden. Der Download liegt als Visual Studio 2005 Solution vor.
| | | 3 Kommentare
- 784 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL | Zurück Weiter
|
|
|
|
|
|
|