BE Gantt Update
30.07.2007 21:53:07
|
Boas Enkler
Momentan forciere ich etwas das Gantt Projekt, deswegen bin heute mal wieder einen ganzen Schritt vorwärts gekommen.
Es gibt nun auf der linken Seite des Controls eine Ansicht die der Identifizierung
einer Zeile dient (s. Screenshot).
Auch können Bars nun via intuitivem Drag & Drop verschoben werden. Als nächstes
Folgt noch das sizen und neu anlegen via Drag & Drop.
Auch habe ich weitere Optimierungen in das Ganttchart eingebaut, welche die Performance
noch weiter verbessern konnte.
Als nächste Punkte habe ich mir auch noch das einstellen der Datumsanzeige stehen.
Momentan wird immer das ShortDate passend zur aktuellen Culture verwendet, hier wird
der User demnächst abweichende Masken definieren können.
Auch werde ich nach aussen weitere einfache Möglichkeiten geben, das Design beeinflussen
zu können.
Hier nun der Screenshot

BE Gantt Component, Beta Tester gesucht
29.07.2007 17:49:57
|
Boas Enkler
Im moment entwickle ich an einer eigenen GanttCharting Componente.
Hierfür suche ich noch BetaTester.
Die Komponente ist in 100% managed .NET 2.0 C# Code geschrieben.
Hier mal ein kleiner Screenshot:
Der Schwerpunkt der Komponente liegt in der anpassbarkeit. So kann mal das Erscheinungsbild
praktisch jedes UI Elementes über Properties einstellen.
So kann man z.bps. den Bars einen Farbverlauf geben, Pre , Post und Inner images definieren.
Das Control läuft auch noch mit einigen hunder / tausend bars sehr performant
Wichtig wären mir Bugreports sowie hinweise auf Useability schwächen.
Ein paar coole Features in VS2008
28.07.2007 22:14:39
|
Thomas Schissler
LINQ to SQL
28.07.2007 04:39:55
|
Thomas Schissler
Scott Gutherie hat in seinem Blog eine interessante Artikel-Serie zu LINQ to SQL
Data Access Improvements with LINQ to SQL
LINQ to SQL is a built-in OR/M (object relational mapper) in .NET 3.5. It enables
you to model relational databases using a .NET object model. You can then
query the database using LINQ, as well as update/insert/delete data from it.
LINQ to SQL fully supports transactions, views, and stored procedures. It also
provides an easy way to integrate business logic and validation rules into your data
model. Below are some of the articles I've written that explore how to use it:
I'll be adding several more articles to my series above in the weeks ahead.
I think you'll find that LINQ to SQL makes it dramatically easier to build much
cleaner data models, and write much cleaner data code.
TableAdapter typisierter DataSets und Transaktionen
26.07.2007 18:05:23
|
Thomas Schissler
Hat man ein typisiertes DataSet und arbeitet darin mit mehreren TableAdaptern, dann stellt
sich die Frage, wie Updates auf diesen TableAdaptern in eine Transaktion zusammengefasst
werden können. Das Problem dabei ist, dass jeder TableAdapter seine eigene Connection
nutzt. Es gibt grundsätzlich zwei Lösungsansätze:
-
Man verwendet den TransactionScope aus dem System.Transactions-Namespace. Diese Vorgehensweise
hat allerdings den Nachteil, dass die verschiedenen Connections nur über eine
Distributed Transactions verwaltet werden können. Das ist nicht unbedingt das
Nonplusultra was die Performance angeht und eigentlich ja auch mit Kanonen auf Spatzen
geschossen, da typischerweise alle TableAdapter ja auf die gleiche Datenbank gehen
dürften und damit die Ditributed Transactions etwas überkandidelt sind.
-
Man verwendet eine Connection für alle TableAdpater. Hierzu gibt es glücklicherweise
die Möglichkiet, dass man die Connection der Tableadapter austauschen kann. Man kann
z.B. einfach die Connection des ersten TableAdapters allen anderen zuweisen und dann
auf dieser Connection mit BeginTransaction eine neue Transaktion beginnen und diese
dann mit Commit bzw. RollBack abschließen. Alternativ kann man natürlich auch manuell
eine Connection erzeugen und diese dann allen TableAdaptern zuweisen.
Eine sehr schöne Beschreibung dieser Lösungsansätze hat John Waters unter folgendem
Link veröffentlicht: ADO.NET
: Getting TableAdapters to participate in transactions
Unbekannte Identität im TFS
24.07.2007 10:35:46
|
Thomas Schissler
Wenn der Team-Explorer behauptet, einen nicht mehr zu kennen und mit folgender Meldung
behauptet, man stellt keine bekannte Identität dar,
dann kann dieses Problem behoben werden, indem man den Cache des Team-Explorers löscht.
Dieser liegt unter Vista im Ordner C:\Users\Thomas\AppData\Local\Microsoft\Team Foundation\1.0\Cache.
Hier einfach alle Unterordner löschen und schon klappts wieder mit dem TFS.
ClientID vom ServerControl automatisiert verfügbar machen
22.07.2007 21:04:54
|
Rene Drescher-Hackel
Im Rahmen der Webentwicklung steht man immer wieder vor dem Problem, die richtige ClientID nach dem Rendern des HTML zu ermitteln. Der eine (aber unschönste Weg!) ist, über die Quellcodeansicht die zahlreichen ClientIDs zu ermitteln und dann zum Beispiel hartcodiert im Javascript einzufügen.
Ein weiterer Weg ist über die Inlinecodeanweisung <% = ServerControlID.ClientID %> den Wert zu holen. Problemiliatisch ist dieses Vorgehen aber für den Fall, wenn man über eine externe Scriptdatei im Code die Information benötigt. Hier bekommt man dann solche Auskünfte:

Einen anderen Weg kann man gehen, wenn man auf JSON zurückgreift. Hier erlangt man fast vollständige Flexibilität über seine Clientobjekte.
Zunächst habe ich die Webseite nach allen Controls, die das ID-Attribute gesetzt haben, untersucht.
Gewinnspiel: Tools für WSUS 3.0
20.07.2007 17:33:27
|
Thomas Schissler
 |
Marco Hagenschulte, Betreiber von www.wsus.de,
hat das Gewinnspiel „Tools für WSUS 3.0“ gestartet. Gesucht wird ein nützliches selbst-entwickeltes
Werkzeug für die Windows Server Update Services 3.0 (Add-On, Sidebar Gadget, Scripts,
usw.).
Zum Gewinnspiel
|
Microsoft SharedView Beta
18.07.2007 11:38:00
|
Thomas Schissler
Habe gerade den ersten Praxis-Test mit Microsoft SharedView absolviert. Das hat auf
Anhieb geklappt, echt klasse.
Das Tool erlaubt es, dass man eine Session einrichtet und die Teilnehmer der Session
untereinander ihre Desktops oder auch nur einzelne Anwendungen freigeben
können. Dabei können die anderen entweder nur zuschauen oder auch aktiv eingreifen.
Das tolle dabei ist, dass für alle Teilnehmer eine einfache Internet-Verbindung genügt,
auch für den Session-Initiator.
Ich wollte gerade einen externen Kollegen bei einer Fehlersuche unterstützen. Am Telefon
war das aber kaum zu erklären. Wir haben einfach beide SharedView runtergeladen und
installiert. Die Verbindung hat auf Anhieb geklappt, obwohl wir beide hinter einer
Firewall sitzen. ich konnte mich auf seinen Desktop schalten und diesen bedienen.
Das Ganze ist noch nicht sehr schnell, aber es handelt sich dabei ja noch um eine
Beta-Version und hoffentlich wird das Release in Punkto Performance noch etwas zulegen.
Das einzige, was am Anfang zu etwas Verwirrung geführt hat, war, dass der Kollege
mir zwar die Kontrolle über seinen Desktop übertragen hat, die dann aber immer
gleich wieder zurücksprang. Wir haben dann aber schnell rausgefunden, dass die Kontrolle
wieder zurückgeht, wenn am Freigabe-Rechner die Maus bewegt wird. Wenn man's weiss,
eigentlich gar nicht so schlecht.
Ich fand das Ding echt superklasse und wir konnten den Fehler recht schnell beheben.
(Sicher schneller als per Telefon und auch schneller als wenn wir erst den remote
desktop auf der Firewall hätten freischalten lassen müssen)
Microsoft
SharedView Beta
Tool zum gruppieren von Code-Elementen in Regions
17.07.2007 08:09:00
|
Thomas Schissler
Regionerate ist ein kleines Tool mit dem sich automatisch verschiedene Code-Elemente
wie Properties, Methoden, Konstruktoren in separate Regions zusammenfassen
lassen. Die entsprechenden Codezeilen werden dabei automatisch in bereits existierende
Regions verschoben und hier sortiert. Die Regeln für die Gruppierung lassen sich anpassen.
Ein kleiner Screencast zeigt,
was das Tool alles kann.
Damit entfällt nun endlich das lästige manuelle Sortieren der Felder und Properties.
Regionerate
Gefunden bei Dani Meier
Termine der .net Developer-Group Ulm
16.07.2007 17:46:34
|
Thomas Schissler
Die nächsten Termine der .net Developer-Group
Ulm sind:
02.08.2007 - 18:00 Uhr
Thema: LINQ
– Language Integrated Query
05.09.2007
- 18:00 Uhr
Thema: Windows Workflow
Foundation in ASP.NET
Nähere
Details unter www.dotnet-ulm.de
Vortragsreihe zum Thema Team Foundation Server
16.07.2007 17:29:09
|
Thomas Schissler
Ich werde in nächster Zeit bei einigen Usergroups unterwegs sein und einen Vortrag
zum Thema Team Foundation Server halten. Die Termine sind momentan:
24.07.07 .net Developers
Group München
25.09.07 bonn-to-code.net
01.10.07 .Net Usergroup Leipzig
31.10.07 .Net Developers
Group Stuttgart
Thema: Team Foundation
Server in der Praxis
Mit
Team Foundation Server bietet Microsoft zusammen mit Visual Studio Team System ein
leistungsfähiges System zur Organisation des gesamten Software Lifecycles. Die Key-Features
sind:
-
Verwaltung
von Funktionsanforderungen, Aufgaben und Fehlern
-
Quellcode-Verwaltung
und Branching-Strategien
-
Buildmanagement
-
Überwachung
von Projektmetriken und Reporting
Wie diese Funktionen in
der Praxis genutzt werden können und ob dies auch von kleinere Teams sinnvoll eingesetzt
werden können, beleuchtet dieser Vortrag. Darüber hinaus werden einige Beispielszenarien
aus der Praxis live vorgeführt.
Weitere Termine sind in Vorbereitung. Wer noch Interesse an einem Vortragstermin hat,
kann sich gerne an mich wenden.
Vortrag über Visual Studio Extensibility in Braunschweig
11.07.2007 11:38:00
|
Roland Weigelt
Nach Leipzig bin ich nun am nächsten Montag, 16.7.2007, in Braunschweig bei der dortigen .NET Developer Group zu Gast. Ab 19:00 halte ich einen Vortrag über Visual Studio Extensibility mit den folgenden Themen:
- Code Snippets
- Project/Item Templates und Wizards
- Makros
- Add-ins
Ein gewisser Schwerpunkt wird bei den Visual Studio Add-ins liegen, wo ich u.a. auf den einen oder anderen Fallstrick hinweisen werde, über den ich bei der Entwicklung von GhostDoc gestolpert bin.
Die Teilnahme ist kostenlos und ohne vorherige Anmeldung möglich, die Veranstalter freuen sich aber bestimmt über einen kurzen vorherigen Kontakt. Veranstaltungsort ist das Restaurant Flair.
Zur offiziellen Ankündigung
V-Modell XT mit Team Foundation Server
10.07.2007 18:56:36
|
Thomas Schissler
Markus Alt hat in seinem Blog einen
Link zu einem Whitepaper, das die Umsetzung eines Entwicklungsprozesses nach dem V-Modell
XT mit Hilfe des Team Foundation Servers beschreibt. Das Dokument ist als PDF und
als MSDN-Artikel verfügbar.
WaitWindow extended
02.07.2007 08:14:16
|
Boas Enkler
Auf Wunsch von ein paar .NET Interessierten FoxPro Entwicklern habe ich das WaitWindow so erweitert, dass man es auch auf dem Desktop anzeigen lassen kann.
Zum Anzeigen des WaitWindows auf dem Screen reicht es einfach das ParentControl auf
null und eine Position über OffScreenPosition zu setzen .
Hier der SourceCode wie das anzeigen auf dem Screen funktioniert:
//Wait
Window auf dem Screen …
this.waitWindow1.ParentControl
= null;
//
… an der Position 10,10 anzeigen
this.waitWindow1.OffScreenPosition
= new Point(10,
10);
//Zeit
die das Waitwindow maximal angezeigt werden darf
this.waitWindow1.Time2Show
= TimeSpan.MaxValue;
//Einstellen
ob das Fenster bei mousebewegungen üebr den Parent verschwinden soll
this.waitWindow1.ClearOnMouseMove
= false;
//.........................
//Wait
window anzeigen
//.........................
this.waitWindow1.ShowWindow("Wait
Window Text mit Icon" + Environment.NewLine
+ "2. Zeile" + Environment.NewLine
+ "3.Zeile");
BEWaitClass1.zip
(28,16 KB)