Regiondirektivet i VB.NET

När VB.NET 1.0 introducerades var en av de största förändringarna att all Microsofts genererade källkod var inkluderad och tillgänglig för dig som programmerare i ditt projekt. De äldre Visual Basic-versionerna skapade okrypterbar p-kod som du inte kunde se och inte kunde ändra. Även om den genererade koden fanns i ditt program var det en dålig idé att ändra något av det. Om du inte visste vad du gjorde, var chansen stor att du skulle bryta ditt projekt genom att ändra Microsofts genererade kod.

I VB.NET 1.0 skyddades all denna genererade kod endast genom att vara innesluten i ett regionavsnitt i programmet, där det var ett klick bort från att kunna visas och ändras som en del av din källkod. Från och med VB.NET 2005 (Framework 2.0) satte Microsoft den i en helt annan fil med hjälp av delklasser, men Regiondirektivet är fortfarande tillgängligt och du kan använda det för att organisera din egen kod.

Detta enkla program visar hur Region fungerar:

Du kan sammanställa detta till en DLL för att skydda det eller använda den delvisa klassidén som Visual Studio använder eller bara skapa en separat klassfil, men det enklaste sättet att hålla det ur vägen och ändå göra det till en del av samma fil är att använd Regiondirektivet. Det gör att koden ser ut så här:

Omge bara koden du vill försvinna med:

För felsökningsändamål kan du använda detta som ett sätt att föra delar av din kod närmare varandra så att du kan se dem på samma skärm:

Du kan inte använda en region eller ett slutregion i en funktion eller en subroutine. Med andra ord, detta exempel nedan inte arbete:

Det är ok. Visual Studio kollapsar subroutiner utan ett regiondirektiv. Du kan häcka regioner. Med andra ord detta fungerar:

Om du lånar kod från internet, leta efter regioner i den innan du lägger till den i din kod. Hackare har varit kända för att bädda in dåliga saker i en region för att förhindra att det märks.