Blog Home  Home Feed your aggregator (RSS 2.0)  
artiso Blog - VS 2008
Neues rund um's Thema .Net
 
 Wednesday, February 18, 2009

Bei Unit-Tests bietet die Code-Coverage eine gute und einfache Möglichkeit zu prüfen, ob durch die definierten Test-Cases alle Code-Pfade in einer Methode wirklich durch Tests ausgeführt werden. Dies hilft beispielsweise dabei, noch fehlende Test-Cases zu identifizieren.

Auch mit manuellen Tests ist es möglich, eine Code-Coverage Analyse durchzuführen um auch hier fehlende Test-Cases zu ergänzen. Das folgende Beispiel zeigt eine mögliche Vorgehensweise.

Zunächst wird davon ausgegangen, dass ein maueller Test spezifiziert ist. Dieser kann z.B. so aussehen:

image

Nun wird ein Unit-Test erzeugt. Im Unit-Test wird eine Test-Methode angelegt die der Main-Methode der zu testenden Anwendung entspricht:

   1: [TestMethod()]
   2: [STAThread]
   3: public void FrmMainConstructorTest()
   4: {
   5:     Application.EnableVisualStyles();
   6:     Application.SetCompatibleTextRenderingDefault(false);
   7:     Application.Run(new FrmMain());
   8: }

 

Anschließend muss geprüft werden, ob die Code Coverage analyse für die gewünschten Assemblies aktiviert ist (Menü Test / Edit Test Run Configurations / Local Test Run)

image

Wird nun der Test gestartet, öffnet sich die Testanwendung. Hier werden nun die einzelnen Test-Schritte gemäß Testspezifikation ausgeführt. Anschließend wird die Test-Anwendung beendet. Dies schließt automatisch auch den Test ab. Nun cann die Code-Coverage ausgewertet werden:

image

Und natürlich lassen sich auch die durchlaufenen und nicht durchlaufenen Code-Zeilen farblich kennzeichnen.

image

Den ganzen Ablauf wird in folgendem Video auch nochmals detailliert gezeigt:

Wednesday, February 18, 2009 11:02:18 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [2]    |  |   | 
 Wednesday, February 11, 2009

In manchen Fällen ist es wünschenswert, eine Liste mit den Tests aus einem Projekt auszudrucken. Leider gibt es hierzu in Visual Studio keine direkte Funktion, aber ein kleiner Trick hilft hier:

1.) Im TestView die gewünschten Spalten einblenden

image

2.) Gewünschte Tests markieren und dann im Kontext-Menü "Copy" auswählen

image

3.) In Excel einfügen, fertig!

image

Das selbe funktioniert übrigens auch aus den Test Results, leider ohne Icons :-(

image

Wednesday, February 11, 2009 4:38:50 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Wednesday, October 29, 2008

Wie ich hier bereits gepostet habe, verschmilzt Microsoft die Visual Studio Team System Development Edition mit der Database Edition, aus meiner Sicht eine wirklich gute Lösung. Um dieses Thema treten aber immer wieder Fragen auf, so dass ich hier mal die wichtigsten gesammelt habe und natürlich auch beantworte.

F: Wie installiere ich die zusätzliche Edition?
A: Auf MSDN steht den Abonenten die jeweils andere Edition nun zusätzlich zum Download zur Verfügung. Diese kann hier heruntergeladen und dann einfach zusätzlich zur bestehenden Installation installiert werden. Die zusätzlichen Funktionen integrieren sich dann in die bestehende Installation. Ein gemeinsames Installationspaket ist momentan nicht geplant. Mit VS2010 werden die beiden Editionen dann als gemeinsames Paket ausgeliefert.

F: Für welche Editionen gilt diese Option?
A: Die Option gilt sowohl für die 2005er als auch für die 2008er Editionen, im Detail also für:
Visual Studio 2005 Team Edition for Software Developers with MSDN Premium Subscription
Visual Studio 2005 Team Edition for Database Professionals with MSDN Premium Subscription
Visual Studio Team System 2008 Development Edition with MSDN Premium Subscription
Visual Studio Team System 2008 Database Edition with MSDN Premium Subscription

F: Wie verhält sich das mit Servicepacks?
A: Nach der Installation der zusätzlichen Edition müssen die Servicepacks erneut installiert werden.

Weitere Informationen finden sich auch auf der FAQ-Seite zum Merge.

FAQ - MSDN Subscribers with Visual Studio Team System Development Edition or Database Edition

Wednesday, October 29, 2008 8:47:01 AM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Monday, June 09, 2008

Zum Aufzeichnen von WebTests mit VSTS wird ein Web Test Recorder Toolbar im IE integriert.

image 

Unter meinem Vista 64 Bit hatte ich allerdings das Problem, dass der Toolbar dort partou nicht angezeigt wurde. Nach einigem Suchen habe ich dann die Lösung gefunden:

VSTS 2008 : Vista (64 bit) : Recorder bar does not appear when recording a new webtest

Fix:  Vista caches the list of explorer bars you have available and the recorder bar was not included in your list.  The fix is to force Windows to rebuild that cache.  To do this, first make sure you have all Internet Explorer instances shut down, then open the 32 bit registry editor and delete the following keys:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\Component Categories\{00021493-0000-0000-C000-000000000046}
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\Component Categories\{00021494-0000-0000-C000-000000000046}

[Note: by default, the 32 bit registry editor is located in %WINDIR%\SysWow64\RegEdt32.exe]

The next time you boot Internet Explorer, your explorer bar cache will be rebuilt and the recorder bar should be available.

Nachdem ich diese beiden Registry-Keys gelöscht habe, wurde der Toolbar angezeigt.

Weitere Infos und tipps bei Probleme mit dem Web Recoder Toolbar finden sich unter Michael Taute's Blog : Diagnosing and fixing Web Test recorder bar issues.

Monday, June 09, 2008 8:57:40 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Thursday, May 01, 2008

Welche Funktion finde ich in welcher Edition von Visual Studio? Wie unterscheiden sich VS Standard und VS Professional? Wann brauche ich eine Team Edition?

Fragen wie diese beantwortet die Visual Studio Product Comparison.

Visual Studio 2008 Product Comparison

Thursday, May 01, 2008 12:04:12 AM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    | 
 Sunday, April 13, 2008

Die PowerCommands for Visual Studio 2008 sind jetzt in der Version 1.1 veröffentlicht worden und bieten in dieser neuen Version einige neue Funktionen. Bei den PowertCommends for Visual Studio 2008 handelt es sich um eine kostenlose Sammlung von nützlichen Erweiterungen für die Visual Studio IDE. Einen Überblick über die Funktionen bietet dieses Dokument. Da hat es viele Sachen dabei, die sicher schon jeder beim Arbeiten mit Visual Studio 2008 vermisst hat.

PowerCommands for Visual Studio 2008 - Home

Sunday, April 13, 2008 1:48:05 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Wednesday, April 09, 2008

Wenn man aus Visual Studio einen Web-Test startet und diese Meldung bekommt, muss man die Bowser-Extensions im IE enablen.

 image

Hierzu im IE unter Internetoptionen auf dem Reiter Advanced die Option "Enable third-party browser extensions" aktivieren. Dann kann der Web Test Recorder im IE ausgeführt werden.

image

Wednesday, April 09, 2008 9:41:35 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [1]    | 
 Tuesday, April 08, 2008

Zusammen mit meinem Kollegen Mark werde ich am 22.04.08 bei der UG München den Vortrag zum Thema Qualitätsmanagement mit VSTS nachholen.

Thema des Vortrags:

Dass Qualitätsmanagement heute ein fester Bestandteil eines modernen Entwicklungsprozesses sein sollte, ist inzwischen - zumindest in der Theorie – keine Frage mehr. Die Wirklichkeit ist aber leider immer noch sehr häufig eine andere. Woran liegt das? Terminstress, sich ändernde Anforderungen im Projektverlauf und in vielen Fällen ein erheblicher bürokratischer Overhead bei der Ausführung von QM vereitelt erfolgreich, die definierten Maßnahmen auch zu leben.
Die Test-Tools von Visual Studio hat wohl schon fast jeder einmal gesehen, evtl. auch genutzt. Entscheidend beim Einsatz dieser Tools ist aber die Integration in den Gesamtprozess. So besteht ein erfolgreiches QM nicht nur aus Tests, sondern auch Requirementmanagement, Releasemanagement, Testability und andere Aspekte spielen hierbei eine wichtige Rolle. Die Kunst besteht darin, diese verschiedenen Aspekte über den Gesamtprozess miteinander zu verbinden. Wie dieses Ziel mit VSTS und TFS erreicht werden kann, zeigt der Vortrag.
Die ideale Zielgruppe für diesen Vortrag sind: Entwickler, Qualitätsmanager, Testexperten und IT-Entscheider mit der Bereitschaft, sich auch das ein oder andere Prozessdetail live anzusehen.

 

Weitere Details finden sich hier

Tuesday, April 08, 2008 5:00:21 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |  |   | 
 Wednesday, March 12, 2008

Jeder vermisst so die eine oder andere Funktion im Visual Studio. Ein paar kleine nützlichen Erweiterung kann man sich kostenlos mit den Power Commands für Visual Studio 2008 herunterladen. Wer wollte nicht schon immer solche netten Sachen machen wie...

.. alle Projekte in einer Solution einklappen

image

... Referenzen in ein anderes Projekt zu kopieren

image

.. und vieles mehr.

Download und Source Code gibt es hier

Wer zuerst mal lesen will, welche Funktionen es gibt, hier klicken

Wednesday, March 12, 2008 8:01:56 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Wednesday, January 02, 2008

Aus dem Fenster mit Fehlermeldungen und Wahrnungen im Visual Studio heraus kann man direkt Workitems auf dem Team Foundation Server anlegen. Dazu einfach die entsprechende Zeile mit der rechten Maustaste anklicken und im Kontextmenü "Create Work Item" wählen.

image

Es werden automatisch Informationen in den Titel und den Verlauf übernommen, wobei meiner Meinung nach die Details eher in das Beschreibungs-Feld gehören als in den Verlauf.

image

Wednesday, January 02, 2008 2:45:07 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Friday, November 23, 2007

Bei unserem heutigen Treffen der .Net Developer-Group Ulm hatten wir einen Vortrag zum Thema SQL-Projekte. Dabei kam die Frage auf, ob man Daten einer Datenbank nicht in ein SQL-Skript exportieren kann, das dann alle Daten über Insert-Statements einfügen kann. Ich habe hierzu eine Lösung in Visual Studio 2008 gefunden und das geht so:

1.) Server Explorer öffnen und die entsprechende Verbindung rechts anklicken, dann  "Publish to provider" auswählen.

image

2.) Dann die Datebank auswählen und darunter die Checkbox disablen (außer man will wirklich die Datenbank komplett scripten).

image

3.) Die nächsten Schritte sind dann soweit selbsterklären. In dieser Maske kann man dann auswählen, ob man Daten, Schema oder beides scripten möchte:

image

4. In dem erzeugten Script steht dan z.B. so etwas:

INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], 
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'ALFKI', N'Alfreds Futterkiste', N'Maria Anders', N'Sales Representative',
            N'Obere Str. 57', N'Berlin', NULL, N'12209', N'Germany', N'030-0074321', N'030-0076545') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'ANATR', N'Ana Trujillo Emparedados y helados', N'Ana Trujillo', N'Owner',
            N'Avda. de la Constitución 2222', N'México D.F.', NULL, N'05021', N'Mexico', N'(5) 555-4729', N'(5) 555-3745') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'ANTON', N'Antonio Moreno Taquería', N'Antonio Moreno', N'Owner',
            N'Mataderos 2312', N'México D.F.', NULL, N'05023', N'Mexico', N'(5) 555-3932', NULL) INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'AROUT', N'Around the Horn', N'Thomas Hardy', N'Sales Representative', N'120 Hanover Sq.',
            N'London', NULL, N'WA1 1DP', N'UK', N'(171) 555-7788', N'(171) 555-6750') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'BERGS', N'Berglunds snabbköp', N'Christina Berglund', N'Order Administrator',
            N'Berguvsvägen 8', N'Luleå', NULL, N'S-958 22', N'Sweden', N'0921-12 34 65', N'0921-12 34 67') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'BLAUS', N'Blauer See Delikatessen', N'Hanna Moos', N'Sales Representative',
            N'Forsterstr. 57', N'Mannheim', NULL, N'68306', N'Germany', N'0621-08460', N'0621-08924') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'BLONP', N'Blondesddsl père et fils', N'Frédérique Citeaux', N'Marketing Manager',
            N'24, place Kléber', N'Strasbourg', NULL, N'67000', N'France', N'88.60.15.31', N'88.60.15.32') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'BOLID', N'Bólido Comidas preparadas', N'Martín Sommer', N'Owner', N'C/ Araquil, 67',
            N'Madrid', NULL, N'28023', N'Spain', N'(91) 555 22 82', N'(91) 555 91 99') INSERT [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address],
       [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (N'BONAP', N'Bon app''', N'Laurence Lebihan', N'Owner', N'12, rue des Bouchers',
            N'Marseille', NULL, N'13008', N'France', N'91.24.45.40', N'91.24.45.41')

Das Script lässt sich dann wunderbar in Datenbankprojekte einbauen und in der Quellcode verwqlten. Dies bietet z.B. eine gute Möglichkeit, um Testdaten für die Durchführung von Tests mit der jeweiligen Anwendungs-Version in der Quellcode-Verwaltung zu verwalten.

In Visual Studio 2005 funktioniert das leider nicht. Dort muss auf entsprechende Tools zurückgegriffen werden, z.B. den kostenlosen Oracle SQL Developer http://www.oracle.com/technology/products/database/sql_developer/index.html der übrigens auch mit SQL-Server funktioniert ;-)

Friday, November 23, 2007 12:11:53 AM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [3]    |   | 
 Monday, November 19, 2007

Visual Studio 2008 liegt nun als RTM-Version zum Downloadf bereit. Wer keine MSDN-Subscription hat, kann sich hier die Trail-Versionen herunterladen.

Visual Studio 2008 Trial Downloads

Monday, November 19, 2007 6:57:22 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    | 
 Monday, October 29, 2007

Eines der neuen coolen Features in VS2008 ist der Intellisense-Support und das einfärben für Javascript-Code. Das hat bei mir aber nicht funktioniert. Das Problem liegt daran, dass bei der Installation zwei Registry-keys nicht korrekt gesetzt werden.

Setzt man folgende Registry-Keys korrekt dann funktioniert das Intellisense einwandfrei:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\CLSID\{014E9A41-54E5-44ED-B15E-EFFA8758BFFC}]

"CodeBase"=file:///C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\Microsoft.JScript.AuthoringServices.dll

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\CLSID\{014E9A41-54E5-44ED-B15E-EFFA8758BFFC}\InprocServer32\9.0.0.0]

"CodeBase"=file:///C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\Microsoft.JScript.AuthoringServices.dll

 

Nähere Infos findet man hier.

Monday, October 29, 2007 5:17:18 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    | 
 Wednesday, October 17, 2007

Möchte man den kleinesten Key aus einem Dictionary abfragen, dann kann man das jetzt mit Hilfe von LINQ ganz einfach tun. Das Dictionary-Objekt ist in C#3.0 mit einer ensprechenden Extension versehen wordurch das Ganze so einfach ist, wie man sich das immer gewünscht hat.

Dictionary<int, double> ListObject = new Dictionary<int,double>
{
    {2004, 1.5}, {2005, 2.7}, {2006, 3.8}
};
int minYear = ListObject.Min(l => l.Key);
Wednesday, October 17, 2007 10:25:48 AM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |  |   | 

Vor kurzem hatte ich in einem Post beschrieben, wie man mit C#3.0 Listen effizient initialisieren kann. Das Ganze funktioniert übrigens auch mit Dictionaries. Das siehtr dann einfach so aus:

productVersion.Sales = new Dictionary<int,double>
{
    {2004, 1.5}, {2005, 2.7}, {2006, 3.8}
};
Wednesday, October 17, 2007 9:29:20 AM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |  |   | 
 Saturday, October 06, 2007

Objekte und Listen lassen sich jetzt in C# 3.0 sehr schön initialisieren. War bisher um ein relativ einfaches Objekt zu initialisieren sehr viel Code erforderlich, hat sich das nun deutlich verkürzt:

Bisher:

List<cProduct> Products = new List<cProduct>();

cProduct Product = new cProduct();
Product.ID = 1;
Product.BusinessDevelopmentComment = "";
Product.MarketingComments = "";
Product.VersionDescriptions = new List<cProductVersionDescription>();
Product.INNs = new List<cProductINNItem>();

cProductVersionDescription VersionDescription = new cProductVersionDescription();
VersionDescription.ID = 1;
VersionDescription.LastPCMDate = DateTime.Now;
VersionDescription.LastPCMDecision = "Go";
VersionDescription.NPV = 689.54;
VersionDescription.ProductID = 1;
VersionDescription.ProductVersionID = 1;
VersionDescription.VersionName = "Version1";
Product.VersionDescriptions.Add(VersionDescription);

cProductINNItem INN = new cProductINNItem();
INN.INN = 8;
INN.Dosage = 1.5;
INN.DosageUnit = 1;
INN.Volume = 1;
INN.Comment = "Test-Comment";
INN.INNOrder = 1;
Product.INNs.Add(INN);

INN = new cProductINNItem();
INN.INN = 2;
INN.Dosage = 2.5;
INN.DosageUnit = 2;
INN.Volume = 2;
INN.Comment = "Test-Comment2";
INN.INNOrder = 2;
Product.INNs.Add(INN);
 

Neu mit C#3.0:

List<cProduct> Products = new List<cProduct>
{
    new cProduct{ ID = 1, BusinessDevelopmentComment = "", MarketingComments = "", 
        VersionDescriptions = new List<cProductVersionDescription>
        {
            new cProductVersionDescription{ ID=1, LastPCMDate=DateTime.Now, LastPCMDecision="Go", NPV=689.54, ProductID=1, ProductVersionID=1, VersionName="Version1"}
        }, 
        INNs = new List<cProductINNItem>
        {
            new cProductINNItem{ INN=8, Dosage=1.5, DosageUnit=1, Volume=1, Comment="Test-Comment", INNOrder=1},
            new cProductINNItem{ INN=2, Dosage=2.5, DosageUnit=2, Volume=2, Comment="Test-Comment2", INNOrder=2}
        }
    }
};

 

Bisher konnte man den Code noch etwas vereinfachen, indem man einen entsprechenden Konstruktor für die Objekte erstellt hat, in dem die Initialisierungswerte übergeben werden konnten. Hier bietet die neue Version aber den Vorteil, dass diese leichter zu leesen ist, da die Parameter hier entsprechend bezeichnet sind. Beim Konstruktor musste immer Intellisense zu Hilfe genommen werden um herauszufinden, um welchen Parameter es sich handelt.

Saturday, October 06, 2007 5:17:22 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |  |   | 

Möchte man ASP.Net Anwendungen mit VS2008 debuggen, dann ist entscheidend, welchen Servermode man in den Einstellungen für das Web-Projekt ausgewählt hat.

image

Mit dem Visual Studio Developer Server hat das bei mir auf anhieb funktioniert. Allerdings mit dem IIs gab es Probleme. Hier habe ich zuerst diese NMeldung bekommen:

Unable to start debugging on the web server. Strong name validation failed.

Diesen Fehler kann man beheben indem man folgendes Procedere durchführt:

  1. Visual Studio beenden!
  2. Den "Visual Studio Command Prompt" mit "Run as Administrator" starten.
  3. Dann folgenden Befehl ausführen: sn.exe -Vr "%ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\iisresolver.dll"

Damit sollte diese Meldung behoben sein. Dann kam aber bei mir der nächste Fehler:

Unable to start debugging on the web server. IIS does not list an application that matches the launched URL.

Um diesen Fehler zu beseitigen muss man die Windows Authentification aktivieren. Dazu geht man folgendermaßen vor:

  1. Im Explorer auf "Computer" Rechtsklick und dann "Manage"
  2. Den IIS Manager öffnen und die entsprechende Anwendung auswählen

    image
  3. "Authentication" unter IIS doppelklicken und dann "Windows Athentication" auf Enabled setzen

    image

Damit hat bei mir das Debuggen dann auch mit dem IIS funktioniert.

Saturday, October 06, 2007 4:39:24 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    |   | 
 Monday, August 20, 2007

 Will man mit Visual Studio 2008 einem UserControl ein StyleSheet zuordnen, sieht das normalerweise so aus:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs"
    Inherits="Controls.WebUserControl1" %>
<head>
    <link href="../App_Themes/style.css" rel="stylesheet" type="text/css" />
</head>
<asp:Button ID="Button1" runat="server" Text="Button" /><asp:TextBox ID="TextBox1"
    runat="server"></asp:TextBox>


Damit scheint aber der Designer von Visual Studio 2008 Beta 2 Probleme zu haben. Sowohl im Split-View als auch im Design-View wird nach einem Refresh nichts mehr angezeigt.

image

Bei mir hat hier ein kleiner Trick geholfen. Man verschiebt einfach das Link-Tag mit dem Stylesheet ganz an's Ende des Codes. Dann kann man mit Hilfe der Refresh-Funktion aus dem Kontext-Menü des Design-Panes die Anzeige aktualisieren und siehe da, Button und Textbox werden wieder angezeigt.

image

Monday, August 20, 2007 3:45:30 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [3]    |   | 
 Saturday, July 28, 2007

Scott Guthrie beschreibt ein paar coole neue Features von Visual Studio 2008 in seinem Blog: 

Nice VS 2008 Code Editing Improvements
JavaScript intellisense
CSS style intellisense

Saturday, July 28, 2007 9:14:39 PM (Mitteleuropäische Zeit, UTC+01:00)  #    Comments [0]    | 
Copyright © 2010 Thomas. All rights reserved.
DasBlog 'Portal' theme by Johnny Hughes.
Pick a theme: