Jag bloggar numera på http://blog.dileno.com ».

Prenumerera på RSS

Close

Welcome! This is a blog written by me, Martin Soderlund. I live in Stockholm, Sweden, and work as a web consultant with Nansen.

As of now, this blog is written only in swedish. I suggest you use Google Translate to read my blog posts. Also, I'm blogging in English, over here: blog.dileno.com.

I am also available at Twitter, where I share information I find useful.

Arkiv för Visual Studio:

Använd inte Visual Studios inbyggda webbserver!

Visual Studios inbyggda webbserver, även kallad Cassini Web Server, är en lättviktig webbserver som är tänkt att användas för att testa ASP.NET-applikationer i en utvecklingsmiljö. Webbservern är dock väldigt begränsad och det finns ett antal anledningar till att inte använda Cassini alls.

Webbservern är riktad till dem som inte har IIS på sin dator (exempelvis Windows XP Home-användare), men används ofta i professionell utsträckning också. Detta är inte speciellt bra, med tanke på att det finns ett otroligt mycket bättre alternativ: IIS.

Cassini ska aldrig ersätta IIS

Cassini är ingen IIS och ska definitivt inte ersätta IIS - inte ens i utvecklingsmiljö enligt mig. Den främsta anledningen till detta är att en ASP.NET-applikation i ett antal fall inte beter sig likadant i Cassini som i IIS. En webbapplikation kan fungera bra i Cassini - men när man går live med applikationen på en IIS så fungerar den inte alls.

Dessutom: Cassini är betydligt långsammare än IIS. Det finns också dokumenterade problem och lösningar (för både XP och Vista) gällande Cassinis långsamhet i Firefox.

Vad jag vill säga är att Cassini inte är en riktig webbserver och att den absolut inte ska användas professionellt. IIS finns av en anledning - och är en riktig webbserver.

Läs gärna Microsofts informationssida om Cassini.

Build Events i Visual Studio och Command copy exited with code 1

Build Events i Visual Studio är ett trevligt sätt att köra vissa script när man bygger ett projekt. Du hittar Build Events genom att högerklicka på ditt projekt i Visual Studio, välja Project Properties och sedan fliken Build Events.

Jag stötte på två felmeddelanden när jag skulle bygga ett projekt som hade en händelse kopplat till sig.

Det händelsen gjorde var att helt enkelt kopiera innehåll från en mapp i projektet och klistra in det i rotmappen. När jag byggde projektet fick jag först detta felmeddelande:

Command copy exited with code 1.

Jag upptäckte att om jag raderade denna händelse så fungerade det att bygga projektet. Detta är vad man dock bör tänka på när man använder sig av build events i Visual Studio:

  • Se till att hantera mellanslag, exempelvis genom att använda dubbla citattecken:
    copy "sökväg/fil.*" "nysökväg"
    Ett annat lite omständigare sätt att hantera mellanslag på är att helt enkelt inte ha mellanslag i mappnamn, filnamn, användarnamn med mera.
  • Se till att mappen du skriver till inte har skrivskydd.

För min egen del fungerade inget av ovanstående - jag fick ta bort händelsen och manuellt kopiera de filer som skulle kopieras när projektet skulle byggas. Jag stötte dock på ett till problem som var ett hinder för att projektet byggdes - nämligen följande:

The "Exec" task needs a command to execute.

Detta felmeddelande berodde på att det fanns en ny rad i händelsen, som annars var tom. Ta bort den tomma raden och det fungerade att bygga projektet.

Använd Task List i Visual Studio för uppgiftshantering

I Visual Studio finns en inbyggd uppgiftshantering som är mycket användbar. När du programmerar kan du använda dig av kommentaren TODO för att spara uppgifter som du vill göra senare. Du kan även använda HACK och UNDONE. Så här:

// TODO: Improve cache performerance.
// HACK: This works for now but need adjustments before launch.
// UNDONE: Deleted some code here.

För att se en lista på uppgifterna så väljer du View->Task List i Visual Studio och ser till att Comments är valt i dropdownrutan:

Task List i Visual Studio

Du kan ändra på inställningar för Task List under Tools->Options->Environment->Task List. Exempelvis kan du ändra namn på kommentartyperna och inbördes prioritering.

Vad gäller kommentarerna HACK och UNDONE ställer jag mig mer tvivelaktig till dem. Fulhack bör inte finnas från början och versionshantering av projekt gör att UNDONE är onödig.

Observera att Visual Studio-versioner tidigare än Visual Studio 2008 kan ha problem med dessa kommenterar. Då kan du testa att skriva exempelvis //TODO i stället, utan mellanslag i början.

Icke desto mindre är Task List ett hjälpmedel jag rekommenderar dig att börja använda redan nu!

Använd mörkt Visual Studio-tema för behagligare utveckling

Vi utvecklare sitter ibland långa stunder framför datorn och programmerar i Visual Studio. Standardtemat i Visual Studio är helt okej, men kan definitivt göras bättre.

Det är vetenskapligt bevisat att det är mer skonsamt för ögat att läsa ljus text på mörk bakgrund än tvärtom.

Därför är det då bättre att använda ett mörkt Visual Studio-tema med bra kontrast. Min vän och kollega Palle introducerade för ungefär ett år sedan temat MidtonesVariant för mig:

Mörkt tema för Visual Studio

Jag har sedan dess kört MidtonesVariant på jobbet och hemma, temat fungerar klockrent och är hur skönt som helst att köra. Vill man så kan man även förändra inställningar för temat i Visual Studio, under Tools->Options->Fonts and Colors.

Ladda ner och installera temat

Ladda ner temat och teckensnittpaketet (zip 4,3 MB)

Så här gör du för att börja använda Visual Studio-temat:

  1. I Visual Studio, välj Tools->Import and Export Settings
  2. Välj Import selected environment settings och Next
  3. Välj Yes, save my current settings och Next
  4. Välj MidtonesVariant.vssettings under My Settings och Next
  5. Tryck på Finish

Fler teman

Jag har stött på ett antal olika mörka teman till Visual Studio. Om du inte gillar MidtonesVariant så hittar du fler teman här:

Hur du löser felmeddelandet "The path is already mapped in workspace"

Använder man Visual Studio tillsammans med Team Foundation Server så kan man stöta på följande felmeddelande när man ska mappa upp ett projekt lokalt:

The path X is already mapped in workspace X

Problemet beror helt enkelt på att man försöker mappa upp ett projekt till en mapp på datorn och denna mapp är redan uppmappad till ett annat befintligt projekt.

Det fungerar inte att enbart radera det aktuella workspacet - man måste även radera cachen för versionshanteringen.

För att radera cachen så raderar du innehållet i mappen C:\Documents and Settings\[User]\Local Settings\Application Data\Microsoft\Team Foundation\1.0.

Ett program jag stötte på när jag skulle lösa ovanstående problem var Team Foundation Sidekicks, som kan användas för att smidigare hantera workspaces i Visual Studio.

Snabba upp Visual Studio med några enkla steg

Här är några enkla steg för att få ett snabbare Visual Studio (framför allt 2005 och 2008):

  • Stäng av AutoRecover
    Under Tools->Options->Environment->AutoRecover, bocka ur Save AutoRecover information every.
    Detta stänger av AutoRecover-läget i Visual Studio, som gör att du smidigt kan få tillbaka kraschade Visual Studio-instanser.
  • Stäng av animationer
    Under Tools->Options->Environment, bocka ur Animate environment tools.
  • Stäng av funktionen som visar var du ändrat i din kod
    Under Tools->Options->Text Editor, bocka ur Track changes.
  • Stäng av startsidan som visas när du startar Visual Studio
    Under Tools->Options->Environment->Startup, välj alternativet Show empty environment under At startup.
  • Installera senaste Service Pack:et
    Som alltid är det en god idé att ha senaste Service Packet installerat. Ladda ner Service Pack 1 till Visual Studio 2008.

Sedan tidigare har jag även skrivit om hur du stänger av validering i Visual Studio.

5 gratis verktyg till Visual Studio 2008

Det finns ett flertal bra verktyg som gör utveckingen i Visual Studio till en än mer trevlig bekantskap än den normalt sett är. Här är fem gratis verkyg som gör ditt arbete i Visual Studio 2008 smidigare.

PowerCommands for Visual Studio 2008

Power Commands används framför allt till att utöka grundläggande Visual Studio-funktionalitet. Några av funktionerna:

  • Ta bort och sortera Using-direktiv
  • Redigera projektfilen direkt i Visual Studio
  • Öppna upp senaste filen du stängde
  • Exempel på nya alternativ i högerklicksmenyn för ett projekt:
    Alternativ i högerklicksmenyn om man använder PowerCommands

CodeRush Express

CodeRush är ett verktyg för att öka produktiviteten i Visual Studio och Express är gratisvarianten. Du får bland annat smidigare refaktorering och ett gäng andra bra funktioner.

Det blir smidigare att refaktorera med CodeRush Express

AnkhSVN

För versionshantering i Visual Studio kan man använda open source-baserade AnkhSVN. Bland annat kan du jobba med versionshanteringen av ditt projekt direkt från Visual Studio-fönstret.

Några av alternativen för AnkhSVN.

Läs mer om och ladda ner AnkhSVN

GhostDoc

Att dokumentera kod blir smidigare med hjälp av GhostDoc. Du kan högerklicka på en metod och välja alternativet Document this så får du automatiskt genererade XML-kommentarer som du själv kan ändra i.

Använd GhostDoc för att dokumentera metoder

Ladda ner GhostDoc

Code Style Enforcer

Skriv snyggare och bättre kod med hjälp av Code Style Enforcer. Detta tillägg jämför din kod mot IDesigns kodstandard för C# och talar om för dig hur du ska döpa dina metoder, variabler, med mera.

Code Style Enforcer markerar med rött var du ska ändra i din kod

Du behöver först ladda ner och installera DXCore för att kunna använda Code Style Enforcer.

Så stänger du av validering av HTML och CSS i Visual Studio

Visual Studio klagar emellanåt på att HTML och CSS i ett projekt inte validerar. Det kan vara nog så irriterande, speciellt om du ska försöka hitta övriga fel (tex kompileringsfel) som kan dyka upp i listan med fel och varningar. Dessutom är det en mycket bättre idé att låta webbläsaren och tillägg som Firebug och IE Developer Toolbar att ta hand om validering av HTML-markup och CSS.

Så här kan det se ut när du möts av valideringsfel i Visual Studio:

Valideringsfel HTML och CSS i Visual Studio

Instruktioner för att stänga av validering

  1. I Visual Studio, gå till Tools, Options och expandera noden Text Editor.
  2. För att stänga av HTML-validering, expandera noden HTML, välj Validation och kryssa ur alternativet Show errors under Options. Tryck Ok.
  3. För att stänga av CSS-validering, expandera noden CSS, välj CSS Specific och kryssa ur alternativet Detect errors under Errors. Tryck Ok.
  4. Klart!

Team Foundation Server 2008 Power Tools och problem med Windows Live Messenger

Om du använder Team Foundation Server 2008 i din utvecklingsmiljö så finns det ett verktyg med extra funktioner du kan installera - Power Tools för Team Foundation Server 2008.

Med hjälp av Power Tools för TFS 2008 kan du bland annat:

  • Sköta versionshanteringen via Utforskaren (alternativet Team Foundation Server dyker upp i högerklicksmenyn i Utforskaren)
  • Jobba utan åtkomst till TFS:en
  • Hantera projektmedlemmar via nya noden Team Members

Riktigt trevligt, med andra ord!

När jag installerade Power Tools så fick jag dock upp ett felmeddelande varje gång jag startade en Visual Studio-instans som använde sig av TFS 2008. Felmeddelandet jag fick var:

Creating an instance of the COM component with CLSID {B69003B3-C55E-4B48-836C-BC5946FC3B28} from the IClassFactory failed due to the following error: 8007000e.

Det visade sig att detta problem var relaterat till beroendet av Windows Live Messenger (msnmsgr.exe) som kan användas för att kommunicera i TFS 2008.

Jag löste problemet genom att helt stänga av möjligheten att kommunicera via Windows Live Messenger:

  1. I Team Explorer, högerklicka på Team Members för ett projekt och välj Settings
  2. Tryck på Change-knappen under Collaboration
  3. Välj alternativet <None> i fönstret Choose a Collaboration Provider och tryck Ok

I Windows Vista löser man problemet genom att köra Windows Live Messenger som administratör (högerklicka på msnmsgr.exe, välj fliken Compatibility och kryssa i "Run this program as an Administrator".)

Använder du en betaversion av Windows Live Messenger måste du in i registret och hacka i stället. Läs på Stuart Prestons blogg hur du löser problemet.

Till sidhuvudet

Clicky Web Analytics