Posts

Posts uit 2014 tonen

Composition over Inheritance

Eerst even back to the basics. Wat wordt bedoeld met overerving en wat wordt bedoeld met composition. Als je het zou moeten beschrijven dan spreek je bij overerving van een 'is-een' relatie en bij composition heb je het over een 'is-een-onderdeel-van' relatie. In code ziet overerving er zo uit: public class Vehicle { } public class Car : Vehicle { } Er is hier duidelijk sprake van de 'is-een' relatie: Een auto is een voertuig. Bij composition ziet de code er als volgt uit: public class Engine { } // Possibility 1: Create the 'composition' inside the constructor public class Car { private readonly Engine _engine; public Car() { _engine = new Engine(); } } // Possibility 2: Inject the 'composition' in the constructor using Dependency Injection (DI). public class Car { private readonly Engine _engine; public Car() { _engine = new Engine(); } } In dit voorbeeld zie je dat een Engine onderdeel is van een auto.

Webforms: De 'Bee Stings'

Momenteel werk ik aan een project dat volledig is ontwikkeld m.b.v. WebForms. De View Engine die wordt gebruikt is nog de oude Webforms View Engine, dus nog geen Razor. Bij het bekijken van de .aspx pagina's kwam ik de inline C# code tegen die in de <% .. %> tags staan. Nu zijn hier verschillende varianten van en ik wilde ze even op een rijtje zetten als geheugensteuntje: <% %> - is voor inline code; met name voor logische flow <%$ %> - is voor het evalueren van expressies zoals resource variabelen <%@ %> - is voor Page Directives, registreren van assemblies, importeren van namespaces, etc. <%= %> - Is kort voor Response.Write() <%# %> - wordt gebruikt voor data bindings <%: %> - Is kort voor Response.Write(Server.HTMLEncode()) in ASP.Net 4.0+ <%#: %> - wordt gebruikt voor data bindings en wordt automatisch HTMLEncoded <%-- --%> - is voor server-side commentaar bron  http://stackoverflow.com/a/957321

Visual Studio 2013 Tips en Trucs

Peek definition Op een type gaan staan met de cursor en dan ALT-F12. Er verschijnt een  'inline tab'. Binnen dit tab kan je ook weer ALT-F12 drukken. Als er meerdere tabs openstaan kan je er doorheen bladeren middels CTRL-ALT-min en ALT-plus. Het is ook mogelijk om wijzigingen aan te brengen in dit deelvenster. Blokken code verplaatsen Selecteer de code/text die verplaatst moet worden en druk vervolgens ALT-pijl omhoog/omlaag. De code wordt nu verplaatst per regel. Scrollbar met code preview Rechtermuisknop op de scrollbar en kies Scroll Bar Options. In het rechter vlak, onderaan bij 'Behavior' kun je kiezen voor 'Use map mode for vertical scroll bar'. Vink het vinkje aan om een code preview te krijgen als je met de muis over de scrollbar gaat. Vensters eenvoudig 'vastzetten' Indien je meerdere vensters heb, kan je met Windowstoets-Pijl een venster aan de linker of rechterkant vastzetten. Met pijltje beneden minimaliseer je het scherm en met p

Code snippet: Alle verbindingen sluiten met de SQL Server database

Gebuik onderstaande SQL-snippet om alle verbindingen met een SQL Server database te sluiten: -- set your current connection to use master otherwise you might get an error use master ALTER DATABASE YourDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE --do you stuff here ALTER DATABASE YourDatabase SET MULTI_USER