TFS: Drag and Drop in der Source Control funktioniert nicht

Bei der Einrichtung der Source Control innerhalb des TFS habe ich die Drag an Drop Funktionalität genutzt, um Dateien schnell und einfach hinzuzufügen. Allerdings funktionierte dies, nachdem ich Visual Studio 2010 als Administrator gestartet habe, nicht mehr.

Der Grund ist anscheinend, dass die Instanz des Explorers und Visual Studio in unterschiedlichen Sicherheits-Kontexten laufen. Im Ergebnis ist das Drag and Drop also deaktiviert. Möchte man weiterhin diesem Komfort nutzen, muss Visual Studio normal gestartet werden.

Dokumentiert ist dieses Verhalten ebenfalls bei Microsoft Connect:
https://connect.microsoft.com/VisualStudio/feedback/details/420374/drag-and-drop-files-on-vs2008-editor-area

.NET Framework Versionsübersicht

Die verschiedenen Versionen des .NET Framework, CLR, C# oder Visual Studio waren in der Vergangenheit sehr unübersichtlich. Erst mit der Version 4.0 wurden die Versionsnummern wieder vereinheitlicht. Folgende Übersicht gibt Aufschluss über die verschiedenen Versionen:

Visual Studio C# Framework CLR
Visual Studio 2002 v1.0 .NET 1.0 v1.0
Visual Studio 2003 v1.1 .NET 1.1 v1.1
Visual Studio 2005 v2.0 .NET 2.0 v2.0
Visual Studio 2005 + (WPF, WF,…) v2.0 .NET 3.0 v2.0
Visual Studio 2008 v3.0 .NET 3.5 v2.0
Visual Studio 2010 v4.0 .NET 4.0 v4.0

Visual Studio 2010 IntelliSense Suggestion Mode

Ich bin gestern durch Zufall auf den IntelliSense Suggestion Mode gestoßen, von dem ich gar nicht wusste das er existiert. Im Gegensatz zum klassischen IntelliSense erlaubt der Suggestion Mode auch die Verwendung von Klassen oder Members, bevor diese überhaupt deklariert wurden – Ein Umstand der besonders bei der Verwendung von TDD zum Tragen kommt.

Classic-Mode:

Suggestion-Mode:

Ich hatte diesen Modus gestern durch Zufall eingeschaltet und habe etwas länger gesucht wo ich ihn deaktivieren konnte:

Keyboard:  CTRL + ALT + Spacebar
Menu:  Edit -> IntelliSense -> Toggle Completion Mode

Visual Studio Einstellungen zurücksetzen

Visual Studio bietet eine ganze Menge Kommandozeilen Parameter, um bestimmte Funktionen zu beinflussen oder abzustellen. Folgende ein paar wichtige Parameter, die ich benötigt habe ich ein Fehler beim Start einzugrenzen und letztendlich zu beheben:

/log – Protokolliert den Start von Visual Studio
/ResetSettings – Setzt alle Einstellungen zurück

Damit alle Parameter eingesehen werden können, muss die devenv.exe mit dem Kommando /? gestartet werden.

Visual Studio 2008: A selected drive is no longer valid

Für ein neues Projekt wollte ich heute Morgen die C++ Komponenten von Visual Studio 2008 Prof. nachinstallieren. Nach dem Aufrufen des Setups wurde jedoch folgende Fehlermeldung angezeigt:

A selected drive is no longer valid. Please review your installation path settings before continuing with setup.

Die Lösung habe ich in einem Thread im MSDN Forum gefunden. Nach der Deinstallation des SP1 für Visual Studio konnte die Nachinstallation durchgeführt und im Anschluss das SP1 erneut installiert werden.

Visual Studio Team System Information Days

Auch dieses Jahr haben Interessierte wieder die Möglichkeit, sich bei der regelmäßig stattfindenden Workshop-Reihe "Visual Studio Team System Information Days" Einblick in die unterschiedlichen Rollen eines Entwicklungsprozesses und deren koordinierte Zusammenarbeit zu verschaffen.

Als ganzheitliches Toolset "aus eigener Hand" unterstützt Visual Studio Team System den gesamten Prozess des Application Lifecycle Management (ALM) von Anforderungsmanagement über Design, Entwicklung und Test bis hin zum Betrieb der Software.

Noch bis Ende Juni 2009 werden die kostenpflichtigen ganztägigen Workshops in verschiedenen deutschen Städten (in den Niederlassungen der Microsoft Deutschland GmbH) durchgeführt. Sie richten sich in erster Linie an Leiter der Anwendungsentwicklung, Projektleiter, Senior Developer sowie technische Entscheider aus Unternehmen mit Entwicklungsteams.

Für Community-Mitglieder entfällt die Teilnahmegebühr von 49,- EUR. Wie erfahrt Ihr auf der Veranstaltungswebseite:
http://go.microsoft.com/?linkid=9649599

Tracing mit ASP.NET AJAX

Die Verwendung von Tracing ist eine einfache und leichte Möglichkeit einem Fehler auf den Grund zu gehen oder einfach nur bestimmte Ereignisse und Vorgänge per Nachricht auszugeben. In der Code-Beside Datei einer ASP.NET Seite ist dies, je nach verwendeter Programmiersprache, einfach. Wird C# verwendet kann über die Klasse Trace und die Methode Write eine Nachricht ausgegeben werden.

In vielen Web Anwendungen wird jedoch JavaScript, häufig in Verbindung mit AJAX genutzt. Das ASP.NET AJAX Framework bietet allerdings auch eine Möglichkeit an Tracing zu verwenden.

Über die Funktion Sys.Debug.trace() kann eine einfache Meldung ausgegeben werden.

<script language="javascript" type="text/javascript">
    function TraceMessage()
    {
        Sys.Debug.trace("Tracing is working");
    }
</script>

Ist das Script-Debugging im Internet Explorer aktiviert und die Anwendung per Visual Studio ausgeführt, wird die Meldung im Visual Studio Output Window ausgegeben.

AJAXTracing

Eine weitere Möglich besteht in der Ausgabe in eine Textarea. Hier muss auf der Seite eine Textarea mit der ID TraceConsole eingefügt werden. Anschließend werden die Meldungen auch hier ausgegeben.

<textarea id="TraceConsole" cols="20" rows="20"></textarea>

Wird kann der Firefox Browser verwendet, können die Meldungen mit Hilfe des FireBug Add-Ons ebenfalls ausgegeben werden. Hierzu ist es nötig die Konsole für den localhost zu aktivieren.

AJAXTracingFirebug2

Dem dem sehr einfachen Ausgeben von Nachrichten bietet das AJAX Framework noch weit umfangreichere Möglichkeiten, um Fehler zu finden, oder das Verhalten der Anwendung zu beobachten. In der MSDN finden sich dazu mehrere Artikel und Beschreibungen:

Debugging and Tracing AJAX Applications Overview

Die Beispielanwendung kann hier runtergeladen werden.

ASP.NET, Visual Studio und F7

Schon in mehreren Beiträgen habe ich auf die Visual Studio Shortcuts und die damit verbundene Erleichterung beim Entwickeln von Code hingewiesen. In letzter Zeit habe ich mich jedoch häufiger mit ASP.NET Entwicklern unterhalten, denen die Funktion hinter der Taste F7 gänzlich unbekannt ist. Ich selbst empfinde diese Taste und die damit verbundene Funktion jedoch als ungemein wichtig.

Jeder ASP.NET Entwickler kennt seit Version 1.0 die mit einer ASP.NET Seite verbundene Code Datei. Früher wurden sie noch Code-Behind gennant, während sie heute Code-Beside heißt.

VSF7

Wird in der ASP.NET Seite (genannt dem Html Markup) ein Control platziert, welches in irgendeiner Weise mit Funktionalität angesprochen werden soll, muss der Entwickler in die Code-Beside Datei wechseln. Hierfür klickt der Entwickler mit der Maus im Solution Explorer auf die zugehörige Datei. Hier liegt jedoch genau der Umstand: Es muss die Maus benutzt werden. Die Taste F7 ermöglicht das direkte springen in die Code Datei und erlaubt somit die Implementierung ohne die Hände von der Tastatur nehmen zu müssen.

Leider ist es mir bis heute nicht gelungen den umgekehrten Weg zu gehen: Von der Code-Beside Datei in das Html-Markup. Der Shortcut Shift + F7 öffnet den Html Designer, welcher aber in diesem Fall fehl am Platz ist.

7. Ausgabe des .NET BlogBook veröffentlicht

Bereits am 15.10. wurde die siebte Version des BlogBooks veröffentlicht.
In dieser Ausgabe stecken einige Neuerungen:

  • Es gibt kein einzelnes PDF mehr. Die einzelnen Teilbereiche wurden in verschiedene Dateien verpackt. So kann man zwischen den Bereichen wählen – Mit der Ergebnis das Downloadgröße und Zeit minimiert werden. 
  • Alles wurde in ein neues Layout verpackt. Damit wird sichergestellt, dass die Lesbarkeit nun besser gegeben ist und auch die Ergebnisse beim Druck positiver ausfallen.
  • Neue Beiträge wurden hinzugefügt.

Im ersten Schritt steht nur der Bereich Windows Presentation zur Verfügung. Alle weiteren Bereiche werden in den nächsten Tagen nachgeliefert.

Rückmeldungen und konstruktive Kritik sind mir und Norbert natürlich immer herzlich willkommen. Weitere Informationen und Download-Möglichkeiten finden sich auf der Projekt-Homepage unter http://www.dotnet-blogbook.com