BigBastis Blog

BigBastis Blog

About Me & my Digital Lifestyle


Navigation
CategoryCSharp

.NET

Featured

C#: Threads mit Parametern Starten

Posted byuserSebastian Gross on Dezember 7th, 2010.

Wenn ihr auch mal mit Threads gearbeitet habt habt ihr sicherlich auch schon festgestellt, dass es zu Problemen kommt, wenn man einen Thread starten möchte und diesem auch noch Parameter unterjubeln will. Ein normaler(einfacher) Threadstart sieht ja folgendermaßen aus: public class test { public test() { Auto a = new Auto(); Thread t = new Thread(new ThreadStart(a.Fahre)); } } public class Auto { public void Fahre(){ //... } } Aber was ist wenn wir nun dem Auto auch sagen sollen wie weit es fahren soll? Also so: public class test { public test() { Auto a = new Auto(); Thread t = new Thread(new ThreadStart(a.Fahre(100))); } } public class Auto […]

.NET

Featured

C#: ++/– Operator auf eigene Klassen anwenden

Posted byuserSebastian Gross on November 24th, 2010.

Ihr habt den ++/– (inkrement/dekrement) Operator bestimmt schon tausende Male eingesetzt ohne viel darüber nachzudenken, genau wie ich, doch heute ist mir schlagartig bewusst geworden, dass dieser Operator auch ein paar von meinen Klassen gut stehen würde und die Anwendung und die Lesbarkeit des Codes verbessern würde. Die Umsetzung gestaltet sich hier zum Glück sehr einfach: class Program { static void Main(string[] args) { Person a = new Person("Alf", 10); ++a; Console.WriteLine(a.ToString()); //Ausgabe: Alf - 11 a++; Console.WriteLine(a.ToString()); //Ausgabe: Alf - 12 a--; Console.WriteLine(a.ToString()); //Ausgabe: Alf - 11 --a; Console.WriteLine(a.ToString()); //Ausgabe: Alf - 10 Console.ReadLine(); } } public class Person { int Alter { get; set; } string Name { […]

.NET

Featured

ASP.NET MVC3: Remote Attribut “richtig” nutzen

Posted byuserSebastian Gross on November 12th, 2010.

Seit gestern probiere ich die neuen Attribute in dem ASP.NET MVC3 RC aus und bin eigentlich sehr zufrieden. Nur ein Attribut wollte bisher einfach nicht funktionieren, nämlich das Remote-Attribut. In den offiziellen Release Notes ist dieses Attribut beschrieben und es wird folgendes Beispiel benutzt um es dem Leser näher zubringen: Dies habe ich auch als Vorlage genommen und meine Methode im Controller implementiert: Doch das hat nicht funktioniert. Nun weiß ich auch wieso, denn hier wird ein falsches Ergebnis zurück gesendet. Das Ergebnis dieser Methode liefert ein “False” oder “True” ab, mit einem großen Buchstaben am Anfang – und das macht uns alles kaputt! Hier ist unser Request den jQuery […]

.NET

Featured

ASP.NET MVC3: Was gibts neues?

Posted byuserSebastian Gross on November 11th, 2010.

Einige von euch haben es sicher mitbekommen, dass vor Kurzem der Release Candidate (RC) von ASP.NET MVC3 veröffentlich wurde. Download, Changelog. Diese neue Version bringt einige für uns Entwickler tolle neue Funktionen und Vereinfachungen mit. Die wohl auffälligste Neuerung ist die neue ViewEngine namens Razor, diese sorgt dafür, dass die Views um einiges schlanker und lesbarer werden durch die Einführung einer neuen Syntax. Ich will mit euch ein kleines Beispielprojekt erstellen in dem wir Schritt für Schritt einige der Neuerungen durchgehen. Fangen wir an und erstellen ein neues MVC3 Projekt in Visual Studio und bereits hier gibts es was Neues zu betrachten: Bild 1: Der Neue Projekt erstellen Dialog Da […]

.NET

Featured

C#: Eigene Dialoge erstellen

Posted byuserSebastian Gross on November 2nd, 2010.

In der Windows Forms Welt benutzt man Dialoge sehr häufig, egal ob es der OpenFileDialog, SaveFileDialog, PrintDialog, ColorDialog oder einfach nur die simple MessageBox ist, sie erleichtern uns der Leben sehr. So wäre auch ein Dialog sehr nützlich der Benutzereingaben entgegen nimmt und uns diese dann weitergibt, doch so einen Dialog finden wir nur im VisualBasic Namespace in .NET. Bild 1: Das InputBox Dialogfenster Der InputBox Dialog nimmt Eingaben vom Benutzer entgegen und gibt diese an unser Programm weiter. Doch was wenn wir den Benutzer nach einem Passwort fragen möchten? InputBox kann den eingegebenen Text leider nicht maskieren. So muss ein eigener Dialog für die Passworteingabe her. Zum Glück ist […]

.NET

Featured

ASP.NET MVC 2: Custom ErrorPages anlegen

Posted byuserSebastian Gross on Oktober 21st, 2010.

Wenn man Webseiten entwickelt möchte man diese natürlich möglichst anschaulich für den Nutzer gestalten, und dazu gehört es auch für den Benutzer anschauliche und auch verständliche Seiten zu präsentieren, auch wenn mal ein Fehler auftaucht. Im Normalfall passen die Default-Fehlerseiten von ASP.NET leider nicht ins Bild der restlichen Seite, weswegen wir gezwungen sind unsere eigenen Fehlerseiten anzulegen. Bild 1: Typische 404 Fehlermeldung von ASP.NET Eigene Fehlerseiten sind unter ASP.NET MVC 2 schnell in vier Schritten eingerichtet. 1. Änderungen an der Web.config vornehmen Zunächst müssen in der Web.config die customErrors eingeschaltet werden. Hier können die Attribute “defaultRedirect”, welches die Adresse definiert die im Falle eines Fehlers aufgerufen wird und “mode”, dass […]

.NET

Featured

.NET 4.0 Entfernung zwischen zwei Punkten (Koordinaten) berechnen

Posted byuserSebastian Gross on Oktober 18th, 2010.

Letztens habe ich wieder mal in .NET Framework rum gewühlt und bin dabei über den System.Device.Location Namensraum gestolpert. Dieser bietet einige tolle Funktionen die man sich mal anschauen sollte. Dieser Namensraum existiert seit .NET 4.0 und ist dazu da um die mit Windows 7 eingeführten Sensoren zu nutzen, wie den Bewegungssensor usw. (Siehe Bild) Bild 1: Die Windows Sensoren Wie es der Namensraum schon sagt geht es hier um den Location Sensor. Leider habe ich keinen Rechner oder Laptop der über ein GPS Chip verfügt auf dem ich diese Funktionalität testen könnte. Aber das war mir auch nicht so wichtig, denn eigentlich war ich auf der Suche nach einer Möglichkeit Entfernungen zu […]

.NET

Featured

.NET: Ein Transparentes Label erstellen

Posted byuserSebastian Gross on September 8th, 2010.

Immer häufiger fragen Leute in Foren nach, wie man das Label dazu bringen kann den Hintergrund transparent darzustellen. Es wird vieles versucht, doch am Ende müssen alle feststellen, dass es mit dem “normalen” Label aus dem Framework nicht möglich ist eine transparente Darstellung zu erreichen. Bild1: So wie es ist und wie es sein sollte Das verwirrende hierbei ist, dass das Label es erlaubt die Hintergrundfarbe auf “Transparent” zu stellen, doch das macht den Hintergrund nicht wirklich transparent, sondern setzt den Hintergrund des Labels auf das des Containers in dem sich das Label befindet. Also wenn man das Label auf der Form Platziert und die Form Blau als Hintergrundfarbe hat wird das […]

.NET

Featured

Java und C# – Die feinen Unterschiede

Posted byuserSebastian Gross on September 6th, 2010.

Immer wieder begegnen mir Leute, die Java und C# in die selbe Schupp-lade stecken. Man hört dann meist Sätze wie “C# ist Java von Microsoft”, “Dann lerne ich doch gleich lieber Java statt Microsofts Kopie”. Jeder der sich mit der .NET Plattform beschäftigt wird natürlich wissen, wie falsch diese Aussagen sind, die meist nur auf alten Vorurteilen und Unwissenheit basieren. Die Anfänge Natürlich haben diese Vorurteile irgendwo etwas wahres dran, so ist es nicht von der Hand zu weisen, dass sich die Syntax der beiden Sprachen sehr sehr ähnlich ist, und auch die Ausführung des Codes in einer VM kann man auch zu den Gemeinsamkeiten zählen. So ist C# ja auch entstanden, […]

.NET

Featured

.NET: Mit Extension Methods arbeiten

Posted byuserSebastian Gross on August 16th, 2010.

Aus gegebenen Anlass möchte ich heute einen kleinen Artikel zu dem Thema Extension Methods in .NET schreiben, einfach nur weil es eine sehr simple Möglichkeit bietet sich das Leben zu erleichtern. Falls es euch nichts sagt, mit Extension Methods, die  es seit C# 3.0 gibt ist es möglich bestehende Klassen, sogar interne Core-Klassen wie Integer oder String mit eigenen Methoden zu erweitern. Wieso das nützlich ist fragst du dich? Na ganz einfach, habt ihr schon mal die Methode String.toInt32() vermisst? Diese ist nur eine (sehr simple) Methode, die man häufiger gebrauchen könnte, die es aber nicht gibt. Diese könnte man sehr einfach mit einer Extension Method erweitern. Als Beispiel möchte […]