.
Anmeldung | Registrieren | Hilfe

.NET-Blogs Archiv Oktober 2010

03.11.10 Treffen der DNUG Braunschweig - SCRUM Best Practices für TFS 2010

30.10.2010 03:09:00 | Lars Keller

Die DNUG Braunschweig trifft sich am 28.09.2010 um 19:00 im Restaurant Zucker (Tagungsraum). Uns kommt der Microsoft MVP Thomas Schissler mit einem Vortag über SCRUM Best Practices für TFS 2010 besuchen.

Scrum erfreut sich für das Management von agilen Projekten immer größerer Beliebtheit. Doch von der Theorie zur Praxis ist trotz der oft beschworenen Einfachheit von SCRUM ein weiter Weg. Der Vortrag erläutert zunächst die Grundlagen von SCRUM. Anschließend werden Best Practices aus allen Projektphasen auf Basis des Team Foundation Servers 2010 erläutert. Dabei werden konkrete und praktische Ratschläge zu Bereichen wie Anforderungsmanagement, Priorisierung, Teamorganisation und mehr gegeben. Der Vortrag beantwortet auch Fragen wie "Lohnt sich der Aufwand für ein Sprintplanungs-Meeting mit dem gesamten Team?", "Wie organisiere ich mein Team und welche Herausforderungen entstehen dabei?" oder "Welche Eigenschaften muss ein Product Owner mitbringen um diese Rolle erfolgreich auszufüllen?". Insgesamt also ein Vortrag der vor allem Vorgehensweisen und Methoden erläutert, aber auch deren praktische Umsetzung aufzeigt.

Wie immer ist dieses Event kostenlos und jeder .NET Interessierte ist herzlich willkommen!

Weitere Informationen zur DNUG Braunschweig findest du hier.

Selber Apps erstellen und das kinderleicht: App-Entwickler-Konferenz 2010

29.10.2010 20:00:30 | Oliver Scheer

Die Deutsche Telekom veranstaltet im November 2010 eine sehr interessante Entwickler-Konferenz. Es geht um Apps für Mobile Devices. Auf der plattformübergreifend App-Softwareentwickler-Konferenz treffen Sie unabhängige Entwickler und Branchengrößen wie Apple, HTC, LG, Microsoft, Nokia, Research in Motion, Samsung oder Sony Ericsson.
Von Microsoft sind mit dabei Frank Prengel mit dem Vortrag bzw. Workshop "Apps für Windows Phone 7 – Plattform, Tools & Dienste" sowie Oliver Scheer mit dem Vortrag "Design & Code für Windows Phone 7 – Silverlight UI & Phone APIs".
Weiterhin gibt es neben zahlreichen Vorträgen bzw. Workshop auch einen App-Wettbewerb, bei dem Sie die Möglichkeit nutzen können, eine Ihrer Apps auf Konferenz einem hochkarätigen Publikum vorzustellen zu können. Zu gewinnen gibt es übrigens ein Samsung Galaxy Tab, ein BlackBerry Torch oder ein Windows Phone HTC 7 Mozart.
Rund um die Software-Entwicklung für Windows Phone stellt das Microsoft Developer Network (MSDN) das deutschsprachige Windows Phone Developer Center sowie das Windows Phone-Forum bereit. Für einen Schnelleinstieg sind die "Ersten Schritte" zu empfehlen. Dann einfach noch die finalen, kostenlosen Entwicklerwerkzeuge für Windows Phone herunterladen. Das Rundumsorglospaket beinhaltet alle notwendigen Tools, damit sofort losgelegt werden kann.

Wir haben von der Telekom dankenswerter Weise noch ein paar Rabattcodes für die Teilnahme bekommen (50% Rabatt und einige wenige mit 100%).

Wer Interesse hat, bitte schnell auf msdnwin@microsoft.com melden.  First come, first serve.

Mehr Informationen: App-Entwickler-Konferenz am 17. November 2010 in Bonn



tweetmeme_source = 'TheOliver';

Hochaufloesende Bilder in Webseiten und Blogs mit Zoom.it und Deep Zoom integrieren

29.10.2010 15:11:44 | Kay Giza

Wie kann ich große Bilder, Bilder-Collagen, hunderte von Bildern oder eben auch einzelne aber eben extrem große Bilder in meine Webseite oder Blog einbinden? Heute möchte ich gerne zwei Varianten davon vorstellen, auch wenn ich diese sekundär bereits ein paar Mal hier im Blog erwähnt hatte. Die Technologien bzw. Produkte sind Zoom.it und Deep Zoom... [... mehr in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Windows Phone 7 – Mein Fazit

29.10.2010 06:58:00 | Jürgen Gutsch

Seit einigen Tagen habe ich nun das Windows Phone 7 (Hardware ist das HTC HD7), nutze es für E-Mails, Twitter, Facebook, meine Notizen und hin und wieder als Kamera.

Vorab: Ich kann kein Vergleich mit anderen Smartphones machen, da ich – ja, ich gestehe – bisher kein Smartphone besessen habe.

Das HTC HD7

Hier ist der erste Eindruck wirklich super. Etwas irritierend ist die ungewohnt dünne Abdeckung auf der Rückseite (HTC Feature?) Da sie aber recht einfach zu lösen ist und wieder gut schließt, kann ich das nicht als Nachteil sehen.

Einen Nachteil gibt es dennoch: Der Auslöser-Knopf für die Kamera ist nicht nah genug am Rand. Vom Gefühl her ist der Auslöser zu weit vom Finger weg und da der Auslöser wirklich fest gedrückt werden muss, braucht es einiges an Kraft.

Ansonsten bin ich beeindruckt von der Schnelligkeit des Geräts. Wenn ich bedenke, dass ich vor 10 Jahren einen Desktoprechner mit der gleichen Leistung hatte…

Ganz wichtig: Trotz der Größe passt das HD7 perfekt in die Hosentasche :-)

Bluetooth

Bluetooth ist für mich ein recht wichtiges Feature, da ich mein Plantronic Headset zwingend einsetzen möchte. Die Verbindung der beiden Geräte funktionierte aber auf Anhieb. Auch wurden mein Laptop und mein altes Handy sofort erkannt.

Windows Phone 7

Das System selber habe ich relativ schnell erfasst. Die Kacheln finde ich sehr übersichtlich, die angezeigten Informationen innerhalb der Kacheln sind schlüssig. Die bei Golem vermisste Statusleiste ist übrigens vorhanden und zeigt natürlich nur Netz- und Gerätespezifische Informationen an. Andere Statusmeldungen werden ja in den Kacheln selber angezeigt. Das Scrolling geht flott. Die Hubs sind absolut intuitiv. Fazit hier: Echt klasse gemacht.

Eine negative Erfahrung gibt es aber auch hier: Nachdem ich das Gerät gestern in der Usergroup, zum Spielen, aus der Hand gegeben hatte, hatte ich den Eindruck, dass alles etwas langsamer läuft. Zusätzlich hat eine Anwendung eine Exception geworfen. Erst nach einem Reboot lief dann alles wieder.

Copy&Paste hätte ich in zwei Situationen bereits benötigt, allerdings lasse ich mich hier gerne auf 2011 vertrösten.

E-Mailkonten

Das Anlegen von E-Mailkonten funktionierte ebenfalls einfach und sauber, genauso die Anbindung an Exchange. Verwirrend ist, dass bei der Neuanlage erst mal nur nach E-Mail und Passwort gefragt wird und die eigentlichen wichtigen Daten erst eingegeben werden müssen, wenn mit E-Mail und Passwort alleine keine Verbindung aufgebaut werden kann. Eventuell habe ich aber auch nur einen Punkt übersehen.

Kontakte

Etwas schwieriger war es mit dem Import meiner Kontakte von meinem Privaten Handy und dem Geschäftshandy. Solange man noch nicht mit dem Windows Live-Konto verbunden ist, wird gleich eine Option angezeigt, mit der die Kontakte von der SIM-Karte übernommen werden können. Sind die Windows Live-Kontakte bereits importiert, wie es bei mir der Fall war, wird die Option nicht mehr sofort angezeigt, sondern erst, wenn man mit dem Finger länger auf der Überschrift des Kontakt-Hubs bleibt. Wenn man nicht weiß, wo sich die Einstellungen verstecken verzweifelt man irgendwann. Ein Blick in die Doku hilft aber – wie immer – weiter.

Apps

Einige Drittanbieter Apps starten teilweise leider etwas langsam. Störend ist das bei Twitter und Facebook, die ja eigentlich aus dem Hause Microsoft kommen. Sobald die allerdings gestartet sind, laufen sie performant und sauber.

Marketplace

Der Marketplace ist noch recht übersichtlich, allerdings tummeln sich jetzt schon Anwendungen die eigentlich keine Sau braucht. Ich möchte nicht wissen wie es in ein paar Monaten aussieht. Aber es finden sich inzwischen auch ein paar kostenlose und brauchbare Anwendungen.

Zune

Etwas Enttäuscht von der Zune Software war ich eigentlich schon bevor ich das HD7 überhaupt in der Hand hatte. Der Grund war, dass ich mich mit meiner LiveID nicht an der Software anmelden konnte.

Nach etwas Recherche war der Grund klar:
Ich lasse mir meine Passwörter vom Passwortmanager generieren und in der Regel sind die dann recht lang. 20 – 25 Zeichen können das dann schon mal sein. Nur ist der Login an der Zune Software leider scheinbar nicht möglich, wenn das Passwort mehr als 15 Zeichen hat. Ich musste also mein Passwort kürzen um die Software im vollem Umfang nutzen zu können. Generell halte ich eine Passwortbegrenzung für ein Unding.

Der Browser

Auch mit den vielfach kritisierten Browser bin ich eigentlich sehr zufrieden. Standardkonforme Webseiten werden ganz normal angezeigt. Fehlerhafte Darstellungen habe ich bisher noch keine festgestellt, allerdings habe ich es auch noch nicht darauf angelegt.

Und am Ende?

Bis auf die paar kleinen Punkte, funktioniert alles so wie ich es erwartet habe und bin ehrlich begeistert vom Windows Phone 7 und dem HD7. Das fehlende Multitasking ist kein Nachteil, da man dennoch mehrere Apps gestartet haben kann und nutzen kann. Ein eingehender Telefonanruf hindert nicht am durch browsen der Bilder. Eine eingeblendete Terminerinnerung legt auch nicht den Browser lahm, genauso wenig wie ein versehendlicher Druck auf den “Home”-Button. Und wieso soll eine Anwendung die im Hintergrund ist nicht pausieren, wenn sie eh nicht verwendet wird?

(Wie gesagt, fehlt mir allerdings als direkter Vergleich die längere Nutzung eines anderen Smartphones)

DotNetKicks-DE Image

Fehlermeldung beim Öffnen von Word- und Excel-Dokumenten aus Outlook

28.10.2010 15:29:00 | Martin Hey

Gelegentlich bekommt man ja auch mal Office-Dokumente per Mail geschickt. Und früher funktionierte es mal, dass man diese Dokumente auch direkt aus der Mail in Outlook per Doppelklick öffnen konnte - wie gesagt früher. Aktuell ist es bei mir so, dass ich dann von den Zielanwendungen - also Word 2010 oder Excel 2010 mit diversen Fehlermeldungen beglückt werde.

Excel meldet: "Die Datei ist beschädigt und kann nicht geöffnet werden.".

Word meint: "Fehler beim Öffnen der Datei in Word."

Und PowerPoint meldet gleich: "Die Anwendung konnte nicht korrekt gestartet werden (0x000022)." und bietet mir an, die Präsentation zu reparieren.



Ursache dafür ist das Sicherheitscenter (englisch Trust Center). Dieses findet man unter Datei -> Sicherheitscenter im jeweiligen Programm. Unter dem Menüpunkt "Geschützte Ansicht" gibt es die Option "Geschützte Ansicht für Outlook Anlagen aktivieren".


Deaktiviert man diese Option, so kann man die Dateien auch wieder aus Outlook heraus öffnen.

Einstieg zur Workflow Foundation 4 : Hallo Workflow

28.10.2010 14:11:23 | Gregor Biswanger

Die Workflow Foundation gibt es bereits ab den .NET-Framework 3. Die Idee dahinter ist, das Arbeitsabläufe oder auch Geschäftslogik Grafisch definiert werden kann. Somit werden komplexe Abläufe leicht gehandhabt. Jedoch war die Technische Umsetzung der Workflow Foundation 3 und 3.5 sehr Fehleranfällig und für heutige Entwicklungsansprüche (TDD etc.) nicht geeignet. Auch der Designer war leider sehr Fehleranfällig. Somit wurde von Microsoft die Workflow Foundation komplett neu geschrieben und mit dem .NET-Framework 4 veröffentlicht.

Aus persönlichen Erfahrungen kann ich eine Vorsicht zur Workflow Foundation 4 entschärfen. Ganz zum Gegenteil sogar, ich kann jedem nur empfehlen die Projekte auf Basis der WF 4 aufzubauen. Hier wird gewehrleistet das man sich an die Komponentenorientierte Entwicklung hält und es behilft die Entwicklung mittels TDD enorm. Aber Details folgen mit weiteren Blog-Einträgen zur WF 4. Dieser Blog-Eintrag soll vorerst ein einfaches “Hallo Workflow” demonstrieren.

Die benötigten Tools:

  • Microsoft Visual Studio 2010 Professional, Premium oder Ultimate
  • Das .NET-Framework 4 (Wird bei Visual Studio 2010 mit installiert)

 

Der Workflow zur Worklfow

Die Vorgehensweise mit der Verwendung der Workflow Foundation ist folgendermaßen aufgebaut:

 

  1. Komponenten werden entwickelt. (In TDD empfohlen!)
  2. Komponente als Activity zur Verfügung stellen.
  3. Einen Workflow aus Aktivitäten (activities) deklarieren.
  4. WF Host mit Workflows in eigene App zur Verfügung stellen.

 

Der erste Schritt beinhaltet das einfache Entwickeln der Komponenten die die eigentlichen Anforderungen (Tasks) abdecken. Das kann ein Update der Datenbank, Senden von WCF-Nachrichten zu einem anderen System, einer Rechnung/Validierung usw. sein.

Die Komponenten werden dann mit activities als Adapter erweitert. Es gibt zudem bereits vorhandene Activities die von der WF zur Verfügung stehen. Hierbei spielt wie bei jeden Programmfluss ein IN und OUT eine wichtige Rolle. Das handhaben der Informationen wird durch diese Activitiy-Facade geregelt.

Die Activities werden dann bei einem Workflow durch Regeln und Validierungen miteinander Definiert.

Das ansteuern und abspielen der Workflows geschieht über einen Hoster. Ein Hoster kann bei unterschiedlichen .NET-Projekten (Ab .NET 4) eingesetzt werden.

Hallo Workflow

Um ein besseres Bild zu erhalten fängt der erste Teil dieser Serie mit einem “Hallo Workflow” an. Dafür werden folgende Schritte umgesetzt:

 

  1. Das erstellen eines neuen Workflow Consolen-Projekts.
  2. Eine Sequence Activity wird dem Workflow definiert.
  3. Eine WriteLine Activity wird der Sequence Activity hinzugefügt.
  4. Dem WriteLine Activity wird dem Text-Property eine Nachricht definiert.

 

Das erstellen eines neuen Workflow Consolen-Projekts

Dazu wird Visual Studio 2010 geöffnet und ein neues Projekt angelegt. Als Template wird unter “Workflow” – “Workflow Console Application” gewählt. Als Name wird “HalloWorkflow” verwendet.

 

SNAGHTML102af95

Abb.1 – Neues “Workflow Console Application” Projekt erzeugen

Die Projektvorlage erzeugt nun ein neues Projekt das anschließend die erste Workflow.xaml-Datei ausgewählt im Designer anzeigen lässt.

SNAGHTML1076eaf

Abb. 2 – Der Aufbau eines Workflow-Projekts in Visual Studio.

Links in der Toolbox befinden sich vorhandene oder selbst geschriebene Activities. In der Mitte des Bildschirms befindet sich der Workflow-Designer womit die Abläufe grafisch definiert werden. Ganz rechts im Solution Explorer befindet sich auch schon die Projektstruktur.

Hierbei spielen die beiden Dateien Program.cs und Workflow1.xaml eine wichtige Rolle. In der Program.cs-Datei ist die statische Main-Methode die beim Ausführen des Projektes gestartet wird. Hier befindet sich ein fertiger Workflow Hosting-Code.

 

   1:  class Program
   2:  {
   3:      static void Main(string[] args)
   4:      {
   5:          WorkflowInvoker.Invoke(new Workflow1());
   6:      }
   7:  }

Listing 2 – View (XAML) mit einem DataGrid und DataPager mit einem DataBinding auf PhonePageList

 

Das Ergebnis sieht dann wie folgend aus:

 

image

Abb. 1 – Ein DataGrid mit DataPager-Erweiterung.

 

Die Integration ist sehr einfach und leicht aufgebaut. Dem DataPager stehen zahlreiche anzeige Möglichkeiten, die unter folgendem Link  zu finden sind: DataPager: Stile und Vorlagen

Einstieg zur Workflow Foundation 4 : Parameter übergeben

28.10.2010 14:11:23 | Gregor Biswanger

Wie bereits beim Blog-Post “Hallo Workflow” berichtet wurde, spielt bei jedem Programmfluss ein IN und OUT eine wichtige Rolle. Das handhaben dieser Informationen wird durch die Activities geregelt. Allerdings müssen auch Activities auf eine allgemeine Informationen  des Workflows zugreifen. Dazu können einem Workflow allgemeine Argumente übergeben werden.

Beispiel: Hallo …

Auch dieser Blog-Eintrag demonstriert mir einer Begrüßung die funktionsweise der WF. Folgende Schritte sind dafür nötig:

  1. Das Erstellen eines neuen Workflow Consolen-Projekts.
  2. Ein Workflow Input Argument setzen.
  3. Eine Sequence Activity wird dem Workflow definiert.
  4. Eine WriteLine Activity wird der Sequence Activity hinzugefügt.
  5. Dem WriteLine Activity wird dem Text-Property das Argument zugewiesen.

 

Das Erstellen eines neuen Workflow Consolen-Projekts

Dazu wird in Visual Studio 2010 eine neues “Workflow Consolen Application”-Projekt mit dem Namen ParameterUebergeben erstellt.

 

SNAGHTML221b22a

Abb. 1 – Neues “Workflow Console Application” Projekt erzeugen.

 

Ein Workflow Input Argument setzen

Nach dem erzeugen des Projekts wird der Workflow automatisch im Designer geöffnet. Für die Verwaltung von Variablen, Argumenten und Assemblies muss am unteren Ende des Designers der jeweilige Bereich ausgewählt werden. Unter diesem Beispiel wird ein klick auf “Arguments” getätigt (Siehe Abb.2).

Nun stehen vier Spalten bereit. Die erste steht für den Namen des Arguments von dem aus im Source-Code zugegriffen wird. Hierbei empfiehlt sich vor dem jeweiligen Namen eine Abkürzung von “Arg” hinzuzufügen. Das dient zur besseren Übersichtlichkeit umso größer das Projekt wird. In diesem Projekt bitte den Namen “ArgBenutzername” eingeben.

Die Direction definiert in welche Richtung der Parameter mitgegeben werden darf. In diesem Beispiel wird “In” gewählt. Das bedeutet, das beim starten des Workflows eine Information “In” den Prozess geladen wird. Out steht dafür das beim beenden des Prozesses auch eine Information zurückgegeben wird.

Der Argument type steht für den Typen der hierbei Übertragen wird.

Unter Default value kommt kein Wert rein. Hier wird nur die Möglichkeit gegeben, das ein Standardwert dem Parameter geben wird, falls entsprechend nichts enthalten ist. Es wird allerdings die gesamte “Visual Basic”-Expression Sprache zur Verfügung gestellt.

image

Abb. 2 – Die Arguments im Workflow-Designer.

 

Eine Sequence Activity wird dem Workflow definiert

Unter dem Bereich "Control Flow” der Toolbox wird eine Sequence Activity ausgewählt und mittels Drag & Drop auf den Designer geschoben. Eine Sequence Activity koordiniert die Ausführung eines Satzes untergeordneter Aktivitäten gemäß einer bestimmten Reihenfolge. Dabei wird jeweils ein Satz ausgeführt. SequenceActivity wird abgeschlossen, wenn die abschließende untergeordnete Aktivität beendet wird.

SNAGHTML23cfbc7

Abb. 3 – Workflow mit Sequence Activity.

 

Eine WriteLine Activity wird der Sequence Activity hinzugefügt

Eine bei der Workflow Foundation 4 vorhandene Activity bietet das ausgeben von Informationen über der Console an. Dieses befindet sich im Bereich “Primitives”. Dieses muss auch mittels Drag & Drop zur Sequence Activity hinzugefügt werden.

SNAGHTML23e5829

Abb. 4 – Workflow mit WriteLine Activity.

 

Dem WriteLine Activity wird dem Text-Property das Argument zugewiesen

Nun wird dem WrtieLine Activity dem Text-Property eine “Visual Basic” Expression zugewiesen. Das kann direkt in der TextBox geschehen oder bei einem kleineren Editor worin etwas mehr Platz ist. Der VB Code ruft die statische Methode Format von der Klasse String auf. Dieses erzeugt ein String aus unterschiedlichen Objekten.

image

Abb. 5 – Der Expression Editor.

 

Als nächstes muss beim Workflow Host ein Wert für das Argument als Parameter übergeben werden. Dazu wird der Anwender vorher nach seinem Namen gefragt und anschließend der Workflow mit der Information gestartet. Parameter kann man mittels Dictionary durchreichen. Wobei der Schlüsselwert genau nach dem Namen des Arguments entsprechen muss.

 

   1:  class Program
   2:  {
   3:      static void Main(string[] args)
   4:      {
   5:          Console.Write("Bitte Namen eingeben: ");
   6:          string username = Console.ReadLine();
   7:   
   8:          WorkflowInvoker.Invoke(new Workflow1(), new Dictionary<string, object>
   9:                                                      {
  10:                                                          {"ArgBenutzername", username}
  11:                                                      });
  12:   
  13:          Console.WriteLine("Zum Beenden drücken Sie eine beliebige Taste...");
  14:          Console.ReadKey();
  15:      }
  16:  }

Listing 2 – View (XAML) mit einem DataGrid und DataPager mit einem DataBinding auf PhonePageList

 

Das Ergebnis sieht dann wie folgend aus:

 

image

Abb. 1 – Ein DataGrid mit DataPager-Erweiterung.

 

Die Integration ist sehr einfach und leicht aufgebaut. Dem DataPager stehen zahlreiche anzeige Möglichkeiten, die unter folgendem Link  zu finden sind: DataPager: Stile und Vorlagen

Einstieg zur Workflow Foundation 4 : Activity selbst schreiben

28.10.2010 14:11:23 | Gregor Biswanger

Das nächste Beispiel zeigt eine Anzahl an neuen Workflow Foundation Konzepten. Diesmal wird ein eigenes Activity erstellt, das auf Variablen zugreift und Rückgabewerte anhand von Entscheidungen erzeugt.

Beispiel: Workflow Rechner

Das Beispiel demonstriert einen Consolen-Rechner. Dazu werden die folgenden Schritte umgesetzt:

  1. Das Erstellen eines neuen Workflow Consolen-Projekts.
  2. Benutzerdefiniertes Activity erstellen.
  3. Dem Workflow ein Input und Output Argument setzen.
  4. Dem Workflow variablen setzen.
  5. Das selbst geschriebene Activity dem Workflow hinzufügen.
  6. Hinzufügen von Switch<T> und Assign Activities zum Anpassen der Rechnung.
  7. Eingabe des Anwenders aufnehmen und Workflow Host mit Parameter starten.

 

Das Erstellen eines neuen Workflow Consolen-Projekts

Dazu wird Visual Studio 2010 geöffnet und ein neues Projekt angelegt. Als Template wird unter “Workflow” – “Workflow Console Application” gewählt. Als Name wird “WorkflowRechner” verwendet.

SNAGHTML5925a4c

Abb.1 – Neues “Workflow Console Application” Projekt erzeugen.

 

Benutzerdefiniertes Activity erstellen

Für eigene Activities wird die Klasse CodeActivity von der WF (System.Activities) bereitgestellt. Dem Projekt wird eine neue Klasse mit den Namen ParseCalculatorArgs hinzugefügt. Die Klasse benötigt nur noch die CodeActivity-Klasse als Basisklasse. Somit wird von der WF erkannt das es sich um ein Activity handelt und wird nach dem Builden des Projekts auch in der Toolbox aufgelistet.

Das ParseCalculatorArgs-Activity soll die Eingabe des Anwenders auswerten und diese dementsprechend an den Workflow weitergeben. Der Workflow kann mit diesen Werten dann weiter agieren.

Für den Input (IN) von Daten zum Activity, wird ein InArgument-Type bereitgestellt. Dieses wird als Property dem Activity hinzugefügt. Die spätere Eingabe des Anwenders erfolgt in der Console als String-Wert. Das für dieses Property ein Wert existiert, ist für die Funktion des Activies ausschlaggebend. Dafür behilft das RequiredArgument-Attribute. Den mit diesen Attribute schlägt der Designer eine Validierungsnachricht das noch eine Eingabe zu diesem Feld benötigt wird. Für die komplette Dateneingabe des Anwenders wird dem Activity das Property Expression hinzugefügt.

Für die Ausgabe (OUT) der verarbeiteten Daten, wird der OutArgument-Type bereitgestellt. Auch dieser wird als Property dem selbstgeschriebenen Activity hinzugefügt. Nach der Datenverarbeitung werden die Werte als Double-Typ zurückgegeben. Daher werden zwei Properties mit FirstNumber und SecondNumber hinzugefügt.

Auch für die spätere Operation wird ein Property vom Typ String benötigt.

Die hauptsächliche Verarbeitung der Daten findet in der Execute-Methode statt. Diese wird von der Basisklasse CodeActivity bereitgestellt. Zu beginn in der Execute-Methode sollten die Out-Properties zurückgesetzt werden. Da sie für dieses Beispiel eine längere Instanz haben. Der Wert wird nicht wie gewohnt mittels “ = “-Operator zugewiesen sondern mittels Set-Methode. Der context dient zur aktuellen WF-Instanz.

Die Abfrage der Properties erfolgt mit der Get-Methode. Wobei gleich die Eingabe des Anwenders in eine String-Variable line geladen wird. Anschließend erfolgt eine Überprüfung ob vom Anwender überhaupt ein Wert existiert und dann wird die Eingabe zu einem String-Array auf gesplittet. Das String-Array wird dann den Out-Properties passend zu deren Typen zugewiesen.

 

   1:  public class ParseCalculatorArgs : CodeActivity
   2:  {
   3:      [RequiredArgument]
   4:      public InArgument<string> Expression { get; set; }
   5:      public OutArgument<double> FirstNumber { get; set; }
   6:      public OutArgument<double> SecondNumber { get; set; }
   7:      public OutArgument<string> Operation { get; set; }
   8:   
   9:      protected override void Execute(CodeActivityContext context)
  10:      {
  11:          FirstNumber.Set(context, 0);
  12:          SecondNumber.Set(context, 0);
  13:          Operation.Set(context, "error");
  14:   
  15:          string line = Expression.Get(context);
  16:              
  17:          if (!String.IsNullOrEmpty(line))
  18:          {
  19:              string[] arguments = line.Split(' ');
  20:              if (arguments.Length == 3)
  21:              {
  22:                  double number;
  23:                  if (Double.TryParse(arguments[0], out  number))
  24:                  {
  25:                      FirstNumber.Set(context, number);
  26:                  }
  27:   
  28:                  Operation.Set(context, arguments[1]);
  29:                  if (Double.TryParse(arguments[2], out number))
  30:                  {
  31:                      SecondNumber.Set(context, number);
  32:                  }
  33:              }
  34:          }
  35:       }
  36:   }

Listing 2 – View (XAML) mit einem DataGrid und DataPager mit einem DataBinding auf PhonePageList

 

Das Ergebnis sieht dann wie folgend aus:

 

image

Abb. 1 – Ein DataGrid mit DataPager-Erweiterung.

 

Die Integration ist sehr einfach und leicht aufgebaut. Dem DataPager stehen zahlreiche anzeige Möglichkeiten, die unter folgendem Link  zu finden sind: DataPager: Stile und Vorlagen

Team Foundation Server im Überblick für Einsteiger

28.10.2010 10:48:27 | Christian Binder

Wer einen Kurzen Überblick zum Thema Team Foundation Server 2010 speziell für Einsteiger und kleinste Teams sucht, könnte mit folgendem Artikel ein leichtgewichtigen Einstieg finden. Vor allem Warum TFS 2010 für kleine Teams oder auch “Solo Developer“  interessant  sein kann wird aufgezeigt.

Team Foundation Server im Überblick für Einsteiger

PS: Wer Visual Studio 2010 Professional mit MSDN besitzt, hat übrigens schon einen TFS 2010 mit dabei. Dies war mit VS 2008 nicht so.

Wer jetzt noch weitere Informationen zum Thema sucht, sollte mal einen Blick in das Visual Studio 2010 ALM Pivot werfen, hier gibt’s Links zu einigen Webcasts und anderem Content, die auch tiefer gehen.

Viel Spass

Selber Apps erstellen und das kinderleicht: App-Entwickler-Konferenz 2010

27.10.2010 20:07:37 | Kay Giza

Welchen Apps gehört die Zukunft? Was macht den Erfolg von Business-Anwendungen für Mobile Devices aus? Die Deutsche Telekom veranstaltet im November 2010 eine sehr interessante plattformübergreifende Entwickler-Konferenz. Es geht um Apps für Mobile Devices. Auf der App-Softwareentwickler-Konferenz treffen Sie unabhängige Entwickler und Branchengrößen wie Apple, HTC, LG, Microsoft, Nokia, Research in Motion, Samsung oder Sony Ericsson... [... alle Details finden Sie in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Expression Blend: Benutzerdefinierte Behaviors jederzeit anbieten

27.10.2010 12:32:30 | Gregor Biswanger

Ab Expression Blend 3 gibt es ein weiteres neues Feature: „Behaviors“. Mit Behaviors können grundlegende UI-Logiken als Snippet verwendet werden. Die Behaviors selbst liegen in eigenen Klassen oder Assemblies und werden von dort aus auf UI-Controls im XAML referenziert, das gibt den Vorteil, das für viele komplexe Anforderungen keine Zeile Code mehr geschrieben werden muss. Weitere Informationen zu Behaviors unter: “Expression Blend 3 – Mehr Überblick behalten mit Behaviors”.

image

Abb. 1 – Behaviors stehen unter Assets zur Verfügung

Behaviors werden immer im Assets-Bereich angeboten. Selbstgeschriebene Behaviors werden nur dann angezeigt, wenn diese Behavior-Assemblies im jeweiligen Projekt referenziert werden. Jedoch ist es effektiver wenn bei jedem Projekt die selbstgeschrieben Behaviors zur Verfügung stehen.

SNAGHTML3e2aef8

Abb. 2 – Ein TextBoxWatermarkBehavior für jedes Silverlight 4 Projekt zur Verfügung gestellt.

Dazu müssen die Behaviors einfach in ein Unterverzeichnis Libraries beim Expression Blend Installationsverzeichnis kopiert werden. Dort befinden sich von den unterschiedlichen Projekttypen (WPF oder Silverlight) weitere Unterverzeichnisse. Es muss nur noch darauf geachtet werden, das die Assemblies im richtigen Bereich abgelegt werden. Nur dann stehen sie automatisch zur Verfügung.

Kreative Filmemacher gesucht!

26.10.2010 12:23:58 | Oliver Scheer

brand eins und Microsoft suchen beim diesjährigen Imagine Cup erstmalig zusammen das Video, das die Welt bewegt! Schüler und Studenten sind dazu aufgefordert, – alleine oder zu zweit – ein 30-60 Sekunden Video zu erstellen, in dem sie zeigen, wie Technologie die Welt verändern kann.

Als Lohn winken Preise wie eine Reise nach New York oder als Sonderpreis ein Jahresabo der brand eins!

Imagine Cup

Der Imagine Cup ist einer der weltweit größten Wettbewerbe für Studenten und Schüler. Zu dem Motto „Technologie für eine bessere Welt“, können die Schüler und Studenten beim Imagine Cup insgesamt in fünf Kategorien teilnehmen: Software Design, Embedded Development, Digital Media, Game Design und IT Challenge.

Weitere Informationen zu dem Sonderpreis von brand eins und Microsoft sowie zum Imagine Cup allgemein finden Sie auf www.imaginecup.de.

clip_image002[5]



tweetmeme_source = 'TheOliver';

Free ebook: Moving to Microsoft Visual Studio 2010

26.10.2010 07:24:00 | Ozgur Aytekin

Here’s a little bit about the authors: Ken Haines is a software development engineer at Microsoft, working in the Consumer and Online Division. He has a passion for distributed applications in the cloud and strives to help customers and partners find the right solution for their needs. Pascal Paré has worked at Microsoft since 2006, where he has held positions as a software engineer on both development and testing teams. Patrice Pelland is a principal development manager at Microsoft, working in the Consumer and Online Division. He leads a development team that is focused on innovation and incubation across all Microsoft consumer products.

Moving to Microsoft Visual Studio 2010 was written with three audiences in mind:

Part I is for developers moving from Visual Studio 2003 to Visual Studio 2010.

Part II is for developers moving from Visual Studio 2005.

And Part III is for developers moving from Visual Studio 2008.

http://blogs.msdn.com/b/microsoft_press/archive/2010/09/13/free-ebook-moving-to-microsoft-visual-studio-2010.aspx

31 Days of Windows Phone 7 By Jeff Blankenburg

26.10.2010 07:19:00 | Ozgur Aytekin

It's that time of year again...the time when I make an insane blogging announcement, and then you, my loyal reader, wait anxiously for me to fail. Well, I hate to disappoint you, but failure is not an option this time. This series has already been written, and it's just up to my trusty blogging platform to get these posts out on a timely basis.

Day #1: Project Template
Day #2: Page Navigation
Day #3: The Back Button Paradigm
Day #4: Device Orientation
Day #5: System Theming
Day #6: Application Bar
Day #7: Launchers
Day #8: Choosers
Day #9: Debugger Tips
Day #10: Input Scope

Day #11: Accelerometer
Day #12: Vibration Controller
Day #13: Location Services
Day #14: Tombstoning
Day #15: Isolated Storage
Day #16: Panorama Control
Day #17: Pivot Control
Day #18: WebBrowser Control
Day #19: Push Notification API
Day #20: Map Control

Day #21: Silverlight Toolkit
Day #22: Apps vs. Games
Day #23: Trial Versions of Your App
Day #24: Embedding Fonts, Video, and Images
Day #25: Talking to Existing APIs (like Twitter)

...

http://www.jeffblankenburg.com/post/31-Days-of-Windows-Phone-7.aspx

Windows Phone 7 App in 5 Minuten

26.10.2010 05:17:02 | Oliver Scheer

Windows Phone 7 ist in aller Munde, und beweist das Programmieren und Designen nicht kompliziert und aufwendig sein muss. Dieses kleine Video zeigt wie man in 5 Minuten einen Soundgenerator bauen kann ohne dabei auch nur eine einzige Zeile Code schreiben zu müssen.

Das Video ist im Zeitraffer aufgenommen.

Get Microsoft Silverlight

 

Viel Spaß,
Der Oliver



tweetmeme_source = 'TheOliver';

Die Ribbon für WPF in eigene Anwendungen einbauen

26.10.2010 04:41:36 | Oliver Scheer

Die Ribbon ist eine sehr beliebte neue Möglichkeit für die Steuerung von Anwendungen. Jeder Entwickler kann diese nun in seine bestehenden Anwendungen integrieren. Und das ganze ohne viel Aufwand. Microsoft stellt die Ressourcen dafür kostenfrei zur Verfügung.

Schritt 1 : Herunterladen & Installieren

Alle Ressourcen für das Ribbon können über das Microsoft Download Center heruntergeladen werden. Dort sucht man einfach nach „Ribbon for WPF“. Der Download beinhaltet einen Installer, der automatisch Projektvorlagen in Visual Studio 2010 für Visual Basic .NET und Visual C# einbindet.

Schritt 2: Visual Studio öffnen und einbauen

Um eine neue Anwendung basierend auf der WPF Ribbon bauen zu erstellen, wählt man bei der Anlage eines neuen Projektes einfach die Vorlage „WPF Ribbon Application“ aus.

clip_image002

Anschließend hat man folgende Ansicht in Visual Studio.

clip_image004

Visual Studio 2010 baut automatisch eine lauffähige Ribbon-Anwendung.

Schritt 3: Erweitern

Mit diesen paar Zeilen in XAML (Extensible Application Markup Language) lässt sich die Ribbon an eigene Bedürfnisse anpassen.

<ribbon:Ribbon x:Name="Ribbon">

<ribbon:Ribbon.ApplicationMenu>

<ribbon:RibbonApplicationMenu SmallImageSource="Images\SmallIcon.png">

<ribbon:RibbonApplicationMenuItem Header="Hello Ribbon" x:Name="MenuItem1"

ImageSource="Images\LargeIcon.png" />

</ribbon:RibbonApplicationMenu>

</ribbon:Ribbon.ApplicationMenu>

<ribbon:RibbonTab x:Name="HomeTab" Header="Home">

<ribbon:RibbonGroup Header="Hinzufügen">

<ribbon:RibbonButton LargeImageSource="Images\PlusBlue.png" Label="Benutzer" />

<ribbon:RibbonButton SmallImageSource="Images\PlusGrey.png" Label="Gruppe" />

<ribbon:RibbonButton SmallImageSource="Images\PlusGreen.png" Label="Ordner" />

<ribbon:RibbonButton SmallImageSource="Images\PlusOrange.png" Label="Akte" />

</ribbon:RibbonGroup>

<ribbon:RibbonGroup Header="Auswahl">

<ribbon:RibbonButton LargeImageSource="Images\Sort.png" Label="Sortieren" />

<ribbon:RibbonButton LargeImageSource="Images\RefreshBlue.png" Label="Aktualisieren" />

</ribbon:RibbonGroup>

</ribbon:RibbonTab>

….

</ribbon:Ribbon>

Visual Studio 2010 bietet allerdings auch die Möglichkeit, das ganze über die Toolbox via Drag & Drop duchzuführen.

clip_image006

 

Der Beweis als Video:

Get Microsoft Silverlight

 

Weitere Links zum Thema:

Mehr Beispiele für schnelles, produktives Entwickeln mit Windows 7 gibt es hier
http://msdn.microsoft.com/de-de/windows/ff944344.aspx

Microsoft Download Center
http://www.microsoft.com/downloads/de-de/

Microsoft Ribbon for WPF
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=2BFC3187-74AA-4154-A670-76EF8BC2A0B4&displaylang=en

Visual Studio 2010 Express Edition
http://www.microsoft.com/germany/express/



tweetmeme_source = 'TheOliver';

Wer baut Windows 7 Apps und möchte darüber reden?

25.10.2010 15:06:24 | Oliver Scheer

Servus, wir (die Entwickler-Abteilung bei Microsoft Deutschland) möchte von Ihnen hören. Wir suchen nach spannenden Windows 7 Apps (=Anwendungen).

Wir würden diese gerne hier und an anderen Stellen vorstellen.

Windows7Logo

Einfach eine Email an mich schreiben …



tweetmeme_source = 'TheOliver';

Visual Studio 2010 … Anwendungen entwickeln mit schicken Icons

25.10.2010 14:28:18 | Oliver Scheer

Ich bin gerade auf etwas gestossen, das mein Entwicklerherz doch sehr erfreut hat.

Für ansprechende Anwendungen benötigt man auch ansprechende Symbole. Und da habe ich erst an den all möglichen Orten gesucht, bis ich darauf gestossen bin, daß Visual Studio 2010 Icons direkt mitliefert. Nur so richtig draufgestossen wird man nicht.

Im Ordner C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\VS2010ImageLibrary\1033 befindet sich eine Datei namens ”VS2010ImageLibrary.zip”. Diese Datei hat es im wahrsten Sinne in sich. Nämlich ein Haufen an schicken Symbolen für die unterschiedlichsten Zwecke und Auflösungen.

image

Also … ich muss als Entwickler keine Icons designen Zwinkerndes Smiley

Viel Spaß,
Der Oliver



tweetmeme_source = 'TheOliver';

Deep Zoom und Deep Zoom Composer

25.10.2010 10:58:41 | Oliver Scheer

Deep Zoom ist eine Technik zur schnellen Darstellung von hochauflösenden Bildern in einer sehr spannenden und vor allem schnellen Art und Weise über das Internet. Dieses Video zeigt was Deep Zoom ist und wie man mit dem Deep Zoom Composer eben solche Deep Zooms erstellen kann.

Das Video dauert nur 6 Minuten und zeigt u.a. das sehr spannende Hard Rock Café Deep Zoom, die Installation des Deep Zoom Composer und wie man ein eigenes Deep Zoom erstellen kann.

Der Download und die Verwendung des Deep Zoom Composer ist kostenfrei.

Get Microsoft Silverlight

Download: http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&FamilyID=457b17b7-52bf-4bda-87a3-fa8a4673f8bf



tweetmeme_source = 'TheOliver';

Mit dotnet-kicks.de zur GUI&Design Konferenz in Nürnberg!

24.10.2010 21:04:28 | dotnet-kicks.de Blog

fullsize_468x60_2-4


In Zusammenarbeit mit PPEDV veranstalten wir ein Gewinnspiel, bei dem es drei Freikarten für die GUI&Design Konferenz zu gewinnen gibt. Zusätzlich werden drei Amazon Gutscheine im Wert von je 33€ verlost.

Auf der GUI&Design präsentieren Branchenexperten DIE Trends rund um die Software der Zukunft auf Basis von Microsoft-Technologien. Sie erfahren unter anderem, wie mehr Umsatz generiert werden kann mit Anwendungen, die cool aussehen und leichter bedienbar sind. Die Konferenz findet am 8. und 9. Dezember 2010 in Nürnberg statt.

Am Gewinnspiel kann jeder teilnehmen, der einen Blog betreibt, in dem der dotnet-kicks.de Button eingebunden ist. Der Blog sollte sich hauptsächlich mit Technologien rund um das .NET Framework beschäftigen, sowie mindestens drei sinnvolle Einträge enthalten. Hilfe zur Einbindung des Buttons gibt es hier: http://dotnet-kicks.de/docs/button

Du hast noch keinen eigenen Blog?  Im dotnet-forum.de hast du kostenlos einen Blog eröffnen.
Hier findest du mehr Informationen.

Die drei Freikarten werden unter allen ausgelost, die einen Kommentar in diesem Blogpost hinterlassen. Bitte gebt in dem Kommentar neben eurer Emailadresse auch die URL zu der Webseite an, in der der Button eingebunden wurde.  Die Emailadresse ist nur für Administratoren von dotnet-kicks.de sichtbar und wird nicht an Dritte weitergegeben.

GeliAngelika von Ammon ist bei diesem Gewinnspiel die Glücksfee und wird die Lose ziehen.
Sie bewegt sich fernab der Blogging- und IT-Branche. Sie ist 26 und schloss im September 2009 ihr Studium (BA) als Medien-, Sport- und Eventmanagerin ab.
Nach ihrem Berufseinstieg in der Gastronomie und TV-Branche befindet sie sich derzeit in beruflicher Orientierungsphase. In ihrer Freizeit organisiert sie kulturelle Low-Budget-Produktionen und übt sich im DJing mit Vinyl.

 


Das Gewinnspiel startet am 25.Oktober 2010 und endet am 10 November 2010. Der Rechtsweg ist ausgeschlossen.
Die Gewinner werden hier im Blog veröffentlicht und per Email benachrichtigt.

Ein Ticket für die GUI&Design hat einen Wert 899,00 €. Wer sich bis zum 31. Oktober 2010 anmeldet, sichert sich die Teilnahme zum Frühbucherpreis von nur 699,00 €!

Das Team von dotnet-kicks.de wünscht allen Teilnehmern viel Glück!

Nachtrag zu: Lenovo ThinkPad Advanced Dock mit ordentlichem Lüfter

24.10.2010 20:57:00 | Daniel Springwald

Hier kommt ein kleiner Nachtrag zum vorherigen Eintrag.

Zunächst als Vergleich ein Foto des nervig pfeifenden Mini-Lüfters, welcher vorher dafür zuständig war, die Wärme der Grafikkarte aus der Docking Station zu pusten:

 

Nach dem gestrigen Lüfterumbau für die Grafikkarte habe ich mir heute dann auch noch einmal an den zweiten Lüfter der Docking Station angeschaut. Diesen hatte ich zwar schon vor drei Jahren durch einen gleich großen, etwas leiseren ersetzt, er war aber immer noch sehr hörbar.

Nach dem dem selben Prinzip wie gestern und mit deutlich größerem Lüfter sieht das ganze dann jetzt so aus:

 

Hat alles perfekt geklappt - die Docking Station ist nun komplett flüsterleise :-)

video2brain - WPF 4 und Silverlight 4

24.10.2010 20:40:12 | Gregor Biswanger

Vor einem Jahr veröffentlichte ich bereits ein Video-Training zum Thema “SharePoint 2007 – Für Administratoren und Entwickler” und seit dem 20. Oktober 2010 kann ich mit Stolz meine zweite DVD ankündigen. Diesmal handelt es sich zum Thema “WPF 4 und Silverlight 4”. Die Schwerpunkte liegen für Entwickler und Designer. Es beginnt mit einem Einstieg von XAML mittels WPF und endet mit Silverlight bezogenen Eigenheiten, wie zum Beispiel verteilte Datenkommunikation.

9783827363404

Beschreibung

Mit der Windows Presentation Foundation (WPF) und Silverlight bietet Microsoft eine neue Technologie als Grundlage für benutzerfreundliche Anwendungsoberflächen an. Effektivität lautet hierbei das Zauberwort, das für eigene Anwendungen erreicht werden soll. Dieses Video-Training versetzt Sie in die Lage, diesen Vorsprung bei Ihrer täglichen Arbeit zu nutzen! Gregor Biswanger gibt Ihnen hier einen Überblick über Grundlagen, zum Beispiel von XAML und technischen Funktionalitäten, erklärt aber auch fortgeschrittene Patterns und Arbeitstechniken der Profis. Zudem geht er auf die Usability-orientierte Oberflächengestaltung ein, wovon Entwickler und Designer gleichermaßen profitieren.

 

Weitere Informationen

- Produktübersicht

- Inhaltsverzeichnis

 

Kostenfreie Probevideos

Nach einer kurzen Registrierung, kann man einige Videos kostenfrei auf video2brain ansehen:

http://www.video2brain.com/de/products-635.htm

oder auch unter der Deutschen Microsoft Expression Website:

http://www.microsoft.com/germany/expression/resources/silverlightTraining/videos/Default.aspx

Bonus zur DVD: „Expression Blend 4 – Eine Einführung“

Als besonderen Bonus erhalten registrierte Kunden dieses Video-Trainings auch noch kostenlosen Zugriff auf das Video-Training „Expression Blend 4 – Eine Einführung“.

525_expression_blend4

 

Beschreibung

In diesem etwa achtzigminütigen Video-Training gibt Ihnen Gregor Biswanger eine Einführung in Expression Blend 4. Expression Blend ist das Designwerkzeug für die Entwicklung von Desktop-Anwendungen auf Basis von WPF (Windows Presentation Foundation) und für Web-Anwendungen auf Basis von Silverlight. Sie lernen zunächst die grundlegende Bedienung von Expression Blend kennen, beschäftigen sich dann mit dem Prototyping und der Bereitstellung von Daten für Designer und kreieren abschließend mithilfe von Expression Blend Animationen und 3-D-Effekte für Silverlight- bzw. WPF-Anwendungen. Übrigens: Dieses Video-Training steht registrierten Kunden des Trainings "WPF 4 und Silverlight 4" als kostenloses Bonus-Training zur Verfügung.

Kostenfreie Probevideos

Nach einer kurzen Registrierung, kann man einige Videos kostenfrei auf video2brain ansehen:

http://www.video2brain.com/de/products-620.htm

oder auch unter der Deutschen Microsoft Expression Website:

http://www.microsoft.com/germany/expression/resources/Blend4Training/videos/Default.aspx

 

Hier ab sofort erhältlich

Amazon: "Video-Training: WPF 4 und Silverlight 4"

Verlosung bis zum 29. November 2010

Mit ein bisschen Glück kann man hier auch eine DVD kostenlos abstauben. Einfach ein formloses Kommentar schreiben, obwohl mich Feedback zum Blog allgemein immer Interessiert. Teilnahmeschluss ist Montag der 29.11.2010. Bitte die E-Mail-Adresse nicht vergessen (wird aber nicht öffentlich angezeigt), mehr nicht - den Rest klären wir dann per E-Mail im Fall dessen. Der Rechtsweg ist ausgeschlossen. Je Gewinnspiel-Teilnehmer ist eine Einsendung zulässig. Mehrfach-Einsendungen eines Teilnehmers werden nicht berücksichtigt. Die Gewinner werden unter allen Einsendern durch eine Ziehung ermittelt. Eine Ausbezahlung der Preise in bar ist nicht möglich. Ich übernehme keine Haftung für verloren gegangene, beschädigte, fehlgeleitete oder verspätete Teilnahmen sowie für irgendwelche technische Schwierigkeiten.
 

Besten Dank

Besten Dank an das ganze video2brain-Team und an Addison-Wesley!

video2brain-logoaddison-wesley

Mein Blog ist umgezogen

24.10.2010 17:39:00 | Martin Hey

UmzugIhr werdet es sicher schon gemerkt haben. Seit Freitag Abend ist mein Blog unter einer anderen Url zu erreichen. Meine neue Blog-Adresse ist http://blog.uniquesoftware.de.

Warum war das notwendig? Die bisherige Url war etwas schwer zu merken und nun sind sowohl Webseite als auch Blog unter einer einheitlichen Domain erreichbar, was es für alle etwas einfacher macht.

Bis auf wenige Ausnahmen hat auch alles reibungslos geklappt. Für Besucher, die über die "alte" Url hierher gefunden haben, ist eine Weiterleitung eingerichtet. Der RSS-Feed zeigt ebenfalls auf die neue Domain. Einzig die Social-Media-Einbindung hat etwas gelitten: Bei .NET-Kicks werden die bisherigen Blog-Einträge noch unter ihrer alten Url geführt. Deshalb wird hier im Blog bei diesen Einträgen 0 Kicks angezeigt.

Dieses Blog, das ursprünglich nur als privater Datenspeicher mit gedacht war, ist inzwischen schon bei einigen Lesern zur Hilfequelle geworden - sei es weil sie über die gleichen Probleme gestolpert sind wie ich auch oder sei es weil zumindest mein Post einen Anstoß in die richtige Richtung bieten konnte.

Deshalb möchte ich die Gelegenheit nutzen und mich an dieser Stelle auch noch bei allen meinen treuen Lesern bedanken. Weiterhin viel Spaß beim Stöbern durch meine Gedanken und Ideen. Auch wenn man manchmal in die Tischkante beißen mag, weil ein Problem unlösbar scheint, so gibt es doch in vielen Fällen irgendeinen Workaround, der nur gefunden werden will. In diesem Sinne: happy coding auch weiterhin.

Silverlight Tipp der Woche: DataBinding mit der Code-Behind Klasse

23.10.2010 17:05:00 | Stefan Lange

In diesem Tipp geht es um das Binden an Properties aus der Code-Behind Klasse eines UserControls.

Zusammenfassung

Wenn der DataContext eines UserControls auf das ViewModel zeigt, kann man mit Hilfe von ElementBinding dennoch einfach auf Properties aus der Code-Behind Klasse zugreifen, indem man das UserControl mit einem Namen versieht.

Beschreibung

Üblicherweise wird der DataContext eines UserConrols auf dessen ViewModel gesetzt. Das ViewModel enthält alle für die Anzeige benötigten Daten und das DataBinding der Unter-Controls bindet ausschließlich gegen das ViewModel.

Es kann aber auch vorkommen, dass ein UserControl selbst Properties implementiert, an die einzelne seiner Unter-Controls binden sollen. Wenn die Property DataContext jedoch auf ein ViewModel gesetzt ist, ist es nicht so ganz offensichtlich, wie denn ein Unter-Control innerhalb von XAML an eine Property aus der Code-Behind Klasse binden könnte. Ein einfacher Trick besteht darin, dem UserControl einen Namen zu geben und dann mit Element-Binding den Bezug zur Code-Bedhind Property herzustellen.

In folgendem Beispiel soll die Property SomeItems aus der Code-Behind Klasse als Datenquelle für eine Listbox dienen. Das UserControl erhält hier den Namen „codeBehind“ und bietet darüber der Listbox Property ItemsSource den Zugriff auf SomeItems.

<UserControl x:Name="codeBehind" x:Class="MyProject.MainPage" … />
  <Grid Background="White">
    <ListBox ItemsSource="{Binding SomeItems, ElementName=codeBehind}" … />
  </Grid>
</UserControl>

Obwohl dieser Weg auch bei WPF und Windows Phone funktioniert, klappt die Tool Unterstützung mit „Apply Data Binding…“ im Property Explorer von Visual Studio 2010 nicht. Es werden nur die Properties der Basisklassen aufgelistet. Bei Blend funktioniert der Property Explorer dagegen korrekt.

Anwendungsbeispiel

Es stellt sich natürlich die Frage, wann man überhaupt an Properties aus einem UserControl binden sollte. Dies ist dann sinnvoll und richtig, wenn das UserControl ein wiederverwendbares Control repräsentiert und unabhängig von der Datenmodellierung einer konkreten Anwendung ist. Ein Beispiel wäre ein UserControl „RichTextEditor“ zum Formatieren von Text. Neben einer RichTextBox enthielt so ein UserControl auch eine Toolbar mit Buttons und ComboBoxes zum Einstellen von Schriftart, Größe etc. Ein solcher RichTextEditor benötigt beispielsweise eine Property EditorFontFamily zum Setzen und Abfragen des Default-Fonts. Damit der RichTextEditor wie ein Control als Teil von anderen UserControls verwendet werden kann, sollten seine Properties DataBinding unterstützen. Dazu müssen sie als Dependency Properties implementiert werden, denn nur Dependency Properties können Target Objekte einer Datenbindung sein. Die Implementierung von EditorFontFamily als Dependency Property sieht wie folgt aus.

public partial class RichTextBox : UserControl
{
  public FontFamily EditorFontFamily
  {
    get { return (FontFamily)GetValue(EditorFontFamilyProperty); }
    set { SetValue(EditorFontFamilyProperty, value); }
  }
  public readonly DependencyProperty EditorFontFamilyProperty =
    DependencyProperty.Register("EditorFontFamily", typeof(FontFamily), typeof(RichTextEditor),
    new PropertyMetadata("Verdana"));
 }

Nun kann RichTextEditor in einem anderen UserControl wie jedes andere Control auch verwendet werden. In
diesem Kontext kann dann EditorFontFamily an eine Property MyFontFamily aus einem ViewModel
gebunden werden.

<UserControl x:Class="MyProject.MyPage" … />

  <Grid Background="White">
    <my:RichTextEditor EditorFontFamily="{Binding MyFontFamily}" … />
  </Grid>
</UserControl>

Damit dies funktioniert muss der DataContext auf das ViewModel des umschließenden Controls MyPage zeigen. Daher kann man nicht einfach im Constructor von RichTextEditor den DataContext auf this setzen.

Innerhalb von RichTextEditor holt sich dessen RichTextBox seine FontFamily aus der Code-Behind Klasse.

<UserControl x:Name="codeBehind" x:Class="MyProject.RichTextEditor"
  <Grid>

    <!-- … -->
    <RichTextBox FontFamily="{Binding EditorFontFamily, ElementName=codeBehind}"… />
    <!-- … -->
  </Grid>

</UserControl>

Dieses Binden über zwei Stufen ist der einfachste Weg, UserContols als eigenständige Controls wiederzuverwenden, und funktioniert in der beschriebenen Art und Weise ohne zusätzlichen Code in der Code-Behind Datei.

Hier geht's zum nächsten Tipp.

Lenovo ThinkPad Advanced Dock mit ordentlichem Lüfter

23.10.2010 01:23:00 | Daniel Springwald

Die Advanced Dock von Lenovo ist an sich ein tolles Ding, aber bei den Lüftern mieserabel umgesetzt: Sobald man den PCI-Express Slot für eine Grafikkarte verwendet, wird jede Bewegung auf dem Bildschirm direkt in ein lautes Lüftergeräusch umgesetzt.

Als ich das Gerät vor 3 Jahren kaufte, sah mich mich daher direkt gezwungen, den Hauptlüfter gegen einen etwas größeren und leiseren auszutauschen. Da das nur mit einem Dremel ging, waren Gewährleistung und Garantie natürlich direkt weg ;o)

Der Grafikkarten-Slot hat selbst auch noch einen Mini-Lüfter - etwa so groß wie eine Streichholzschachtel. Dieser ist noch schlimmer und hört sich wie eine kleine Pfeife an. Auch er springt ständig an und aus, wenn man z.B. in Windows ein Fenster verschiebt :-/

Hier hat es vor drei Jahren genügt, einen Widerstand vor den kleinen Lüfter zu schalten, da die PCI-E Grafikkarte eine eher kleine war und nicht so viel Hitze produzierte.

Nun war es aber gestern soweit: Eine Gforce 430 GT sollte her. Auf gut Glück probiert stellte sich leider heraus, dass die Docking Station über den kleinen Lüfter (selbst ohne Verlangsamung durch den Widerstand) bei Beanspruchung der Grafikkarte nicht annhähernd genug Luft auf die Grafikkarte pusten kann. Außerdem war der Lüfter dann wieder unglaubtlich laut und nervig.

Also musste mehr Luft her - gern schön leise ;o)

Hier meine Lösung, welche sehr gut klappt, wenn man auf das zusätzliche Laufwerks-Bay der Docking Station verzichten kann oder dort zumindest nicht ständig Datenträger einlegen muss. Alles natürlich auf eigene Gefahr!

1. Die PCI-Express-Abdeckung abnehmen und einen großen Lüftungsschlitz ´reindremeln

 

 

2. Mit dem Lasercutter passende Gehäuseteile schneiden und zusammen mit einem passenden Lüfter verkleben.

Die Bodenplatte und der Lüfter:

Das erste Seitenteil:

Fertig zusammen gebaut:

Und im Einsatz vor Ort:

 

Klappt super, ist leise und sieht gar nicht mal so aus als würde es dort nicht hingehörten ;-)

 

Verwirrendes NotFound

22.10.2010 07:18:00 | Martin Hey

Das Szenario ist recht schnell umrissen: Abstrakt gesehen gibt es einen Webservice: Unter einer Url ist ein Endpunkt registriert, über den per Get-Parameter gesteuert die Daten gefiltert abgerufen werden können. Auf der Client-Seite gibt es eine Windows Phone 7 Anwendung, die mit Hilfe eines asynchronen WebRequest diese Url abfragt und die in der Response enthaltenen Daten deserialisiert und der Anwendung bereitstellt - also alles recht trivial.

Etwas überrascht war ich, als ich bei der Ausführung im Callback beim Aufruf von EndGetResponse dann eine WebException mit der Meldung "NotFound" bekam. Auch die Details der WebException waren nicht aussagekräftiger.
The remote server returned an error: NotFound.

Beim Zugriff auf entfernte Inhalte bedeutet NotFound ja eigentlich, dass die angeforderte Ressource nicht da ist - eine Datei, ein Endpunkt oder was auch immer. Meist lässt sich dann auch mit einer Überwachung der http(s)-Anforderungen überprüfen, ob der Server irgendwo einen Statuscode 404 geliefert hat.

Genau das war aber bei mir nicht der Fall. Im Browser war die Url problemlos aufrufbar und lieferte Daten und die von mir an den WebRequest übergebenen Credentials waren auch die gleichen wie die, die ich im Browser eingegeben hatte. Auch die Überwachung des Traffics (wenn ich die Seite im Browser aufrief) zeigte nie einen Http-Statuscode im 400er oder 500er Bereich an.

Was war nun eigentlich das Problem? Ganz einfach: Ein selbst ausgestelltes Zertifikat. Was man im Browser bei bekannten Seiten recht schnell wegklickt, machte hier nun ein so großes Problem, dass der Zugriff ganz unterbunden wurde.


Da das Windows Phone 7 auch über keinen Certificate Store verfügt, im man mal eben Zertifikate ablegen kann und so Vertrauensstellungen definiert, war in diesem Fall der einfachere Weg, wieder auf http umzustellen.

Gewünscht hätte ich mir von der API eine aussagekräftigere Fehlermeldung, damit man gleich in der richtigen Richtung suchen kann. Jetzt weiß ich, dass NotFound bedeutet, dass irgend etwas schief gegangen ist.

- artists in residence - artists in residence -

21.10.2010 15:57:43 | Oliver Scheer

Hallo,

Windows Phone 7 landet… und das User Interface Design erzeugt großes Interesse.

Speziell für User Experience / User Interface Spezialisten bieten wir 2 Tage deep dive zu Windows Phone 7 User Interface Design an.

Was es ist: 100% UI Design

Was es nicht ist: Technisches Training!

Agenda

Tag 1:

· Einleitung

· Briefing: Human-centred Design

· Metro User Interface Styleguide

o Allgemein

o Hands-on styleguide experience

o Q&A

· App Konzept review

o Stärken

o Schwächen

o Möglichkeiten

o Gefahren

Tag 2:

· Projektarbeit und Coaching

· App Experience Review

· Deployment J

Wer kann mitmachen?

· Mitarbeiter von Agenturen oder Software-Hersteller

· Leute mit Marketplace Registrierung (als Developer bei Marketplace angemeldet)

Was ist mitzubringen?

· Expertise in Expression und Visual Studio

· Notebook

· Darauf installiert die aktuellen Windows Phone 7 Developer Tools

· Windows Phone 7 Gerät (mit USB Kabel)

· Mindestens eine App (Idee oder bereits entwickelt) die zum Ende des Events in den Marketplace kommen kann

Teilnahmegebühr?

· Keine!

Wann?

· 22.11. und 23.11.  Berlin

· 13.12. und 14.12. Hamburg

· 17.1. und 18.1. Unterschleißheim

· 7.2. und 8.2. Bad Homburg

· 14.02.-15.02. Köln

Ø Jeweils von 9:30 bis 17:30 Uhr, Details folgen per Mail

Bitte meldet euch (max. 2 Personen pro Firma/Agentur) per Mail (clemensl@microsoft.com) bei mir an.

ACHTUNG: First come, first serve J,  Teilnehmende werden per Mail informiert.



tweetmeme_source = 'TheOliver';

Der offizielle Werbespot für das Windows Phone 7

21.10.2010 15:01:15 | Oliver Scheer

Diesem Spot wird man in den nächsten Wochen nicht entgehen können … und wollen. Ich find ihn großartig.



tweetmeme_source = 'TheOliver';

Windows Phone 7

21.10.2010 13:08:08 | Kay Giza

Windows Phone 7 (WP7): Neues Design, coole Funktionen, sinnvolle Bündelung in Hubs. Windows Phone 7 überzeugt durch ein neues Design, eine einfache Benutzerführung sowie eine Reihe neuer nützlicher Funktionen und Apps, wodurch Anwender produktiver arbeiten, direkter kommunizieren oder einfach nur Spaß haben können. Darüber hinaus führt die Integration von Services wie Zune, Xbox Live, Windows Live, Bing oder Facebook zu einem neuen Benutzererlebnis. Seit Donnerstag 21. Oktober 2010, gibt es die ersten Geräte mit dem mobilen Betriebssystem von Microsoft. In Deutschland werden dies Modelle von... [... mehr in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Event-Nachlese: Microsoft Software Strategy Summit 2010: Alle Videos und Praesentationen zum Download

20.10.2010 15:07:09 | Kay Giza

Microsoft Software Strategy Summit 2010: Microsoft, Steve Ballmer, alle Vorträge als Video-on-Demand + Downloads, Windows Azure, Kinect und Three Screens and a Cloud: Am 6. Oktober 2010 fand in Köln der aus Microsoft Sicht wichtigste Strategie-Event im deutschsprachigen Raum für alle Systemintegratoren und Softwarehersteller statt. Die Teilnehmer erhielten einen Ausblick auf die kommenden Softwaretrends und Entwicklungen von Morgen, wie Windows Azure, Windows Phone 7 oder Microsoft Kinect. Alle Präsentationen stehen jetzt als kostenfreier Download (PDF, XPS) sowie als Video-on-Demand auf MSDN, dem Microsoft Developer Network zur Verfügung. Referenten wie Dr. Said Zahedani, Kai Göttmann, Andreas Schauer, Finn Boysen, Sebastian Weber, Sven Zuschlag, Clemens Lutsch, Frank Fischer, Dr. Frank Prengel, Steffen Weh, Christian Binder und natürlich sicherlich das Highlight des Tages: Steve Ballmer, der Microsoft CEO, referierten über die neuesten Softwaretrends und Entwicklungen... [... mehr]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Microsoft Community Open Day 2010

20.10.2010 14:29:00 | Lars Keller

Am kommenden Freitag und Samstag findet der Microsoft Community Open Day 2010 in München statt. Die Agenda ist prall gefühlt mit vielen aktuellen Themen, z.B. Windows Phone 7 :-)

Dieses Jahr findet zum ersten Mal der Community Open Day zusammen mit den MVPs und den CLIP’lern statt. Ich freue mich schon sehr auf viele altbekannte und neue Gesichter! Ein weiteres Highlight ist für mich, dass es Kinect zum Anfassen gibt! Seit der deutschen Microsoft Partner Konferenz (mein Bericht dazu gibt es hier) bin ich mit dem Kinect Virus infiziert! :-)

Daily Demo: Glass Effect in Windows 7

20.10.2010 09:00:00 | Oliver Scheer

Ein schon etwas älteres Feature von Windows ist die Aero-Oberfläche. Ein Hingucker bei Aero sind die Fenster die vollständig durchsichtig sind. Standardmäßig sind die Titelleiste und die Ränder bei allen Anwendungen durchscheinend. Der eigentliche Inhalt jedoch nicht. Um dies in seine eigenen Anwendungen zu aktivieren ist sehr wenig Code notwendig.

using System;
using System.Runtime.InteropServices;
using System.Windows;
using System.Windows.Interop;
using System.Windows.Media;

namespace Windows7Features
{
    public class Helper
    {
        [DllImport("dwmapi.dll", PreserveSig = false)]
        static extern void DwmExtendFrameIntoClientArea(IntPtr hwnd, ref MARGINS margins);

        [DllImport("dwmapi.dll", PreserveSig = false)]
        static extern bool DwmIsCompositionEnabled();

        public static bool ExtendGlassFrame(Window window, Thickness margin)
        {
            if (!DwmIsCompositionEnabled())
                return false;

            IntPtr hwnd = new WindowInteropHelper(window).Handle;
            if (hwnd == IntPtr.Zero)
                throw new InvalidOperationException("The Window must be shown before extending glass.");

            // Set the background to transparent from both the WPF and Win32 perspectives
            window.Background = Brushes.Transparent;
            HwndSource.FromHwnd(hwnd).CompositionTarget.BackgroundColor = Colors.Transparent;

            MARGINS margins = new MARGINS(margin);
            DwmExtendFrameIntoClientArea(hwnd, ref margins);
            return true;
        }
    }

    struct MARGINS
    {
        public MARGINS(Thickness t)
        {
            Left = (int)t.Left;
            Right = (int)t.Right;
            Top = (int)t.Top;
            Bottom = (int)t.Bottom;
        }
        public int Left;
        public int Right;
        public int Top;
        public int Bottom;
    }
}
Klasse Helper

Die Initialisierung des Fensters muss nach dem Laden des Fensters geschehen. Ein gutes Ereignis dafür ist das “Loaded”-Ereignis:

using System.Windows;

namespace ASimpleGlassUi
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            this.Loaded += (s, e) =>
                {
                    Helper.ExtendGlassFrame(this, new Thickness(-1));
                };
        }

    }
}

Das Ergebnis sieht wie folgt aus:

image

Das bisschen Code ist hier zu finden:

Die Windows Entwicklerlinks der Woche Kw 42/2010

19.10.2010 16:55:14 | Oliver Scheer

Entwickler Links

Die Microsoft Ribbon als .NET Komponente für eigene Anwendungen

Das Ribbon-Steuerelemt, das man mit Office 2007 eingeführt wurde, ist nun auch als Steuerelement in .NET und damit für jeden verfügbar. Man muss einfach nur den Link unten folgen und den Ribbon-Installer ausführen.

Das Ribbon-Steuerelement besteht aus einer Reihe von weiteren Elementen, wie z.B. Application Menu, Quick Access Toolbar, Tabs, Groups und und und … Alles was man von der Ribbon aus Paint, WordPad oder Office her kennt.

clip_image001

Link: http://msdn.microsoft.com/de-de/library/ff799534.aspx

Project Hilo: C++

“Hilo” ist eine Serie von Artikeln und Codebeispielen, die demonstriert wie man das Beste aus Windows 7, Visual Studio 2010 und C++ herausholt um schnelle und ansprechenden Client-Anwendungen zu erstellen. Hilo bietet sowohl Sourcecode wie auch Anleitungen für Design und Entwicklung.

clip_image002

Link: http://code.msdn.microsoft.com/Hilo

Taskbar Timer

Dieses Tool hat das Potential mein Lieblingssprecher-Tool zu werden. Diese Anwendung verwendet die neue Taskleiste von Windows 7 um die noch verbleibende Zeit zu visualisieren.

Das schöne dabei, er kommt zusammen mit Sourcecode und kostet nix.

clip_image003

clip_image004

clip_image005

Link: http://www.codeproject.com/KB/winsdk/TaskbarTimer.aspx

Fun Link der Woche

Wie Steve Ballmer früher Windows verkaufte …

Link: http://www.youtube.com/watch?v=tGvHNNOLnCk

Allgemeine Microsoft Links

Kostenloses Channel 9 Windows 7 Trainings Kit

Link: http://channel9.msdn.com/Learn/Courses/Windows7

MSDN Windows 7 Developer Center

Link: http://msdn.microsoft.com/de-de/windows/default.aspx

Microsoft Windows 7 Forum

Link: http://social.msdn.microsoft.com/Forums/de-DE/windows7de/threads

Microsoft Windows Vista Forum

Link: http://social.msdn.microsoft.com/Forums/de-DE/windows_vistade/threads

Microsoft Visual Studio 2010 Express Edition - Kostenlose Entwickler Tools

Link: http://www.microsoft.com/germany/express/

Echte Radioknöpfe für Silverlight und Windows Phone

18.10.2010 19:02:37 | Oliver Scheer

Auf meiner täglischen Surf-Safari bin ich heute auf dieses Steuerelement/Control gestossen. Endlich mal ein Control, das wirklich wie ein Radio-Knopf aussieht.

image

Mehr Infos

28.10.10 Public Viewing der PDC 2010 bei der DNUG Braunschweig

18.10.2010 10:51:00 | Lars Keller

Die DNUG Braunschweig trifft sich dieses Mal am 28.10.2010 um 17:30 bei der AX Solutions GmbH in Braunschweig.

Die Professional Developers Conference (PDC) ist die Konferenz, auf der Microsoft gewöhnlich die neuesten Pläne und Veröffentlichungen für Entwickler bekannt gibt. Sie findet dieses Jahr am 28. und 29. Oktober in Redmond statt und ist schon seit geraumer Zeit ausverkauft. Am Donnerstag, 28. 10. 2010 ab 18:00 Uhr unserer Zeit wird die Keynote (u.a. mit Steve Ballmer) live übers Internet übertragen.
Des Weiteren gibt es folgende Dinge zu gewinnen, bzw. als Give-Away:

  • 1x Visual Studio 2010 Professional NFR (Not for Resale, kein Weiterverkauf)
  • 1x Windows 7 Ultimate NFR
  • 1x Competition Pro C64 USB-Joystick inkl. umfangreicher Spielesammlung für Nostalgiker
  • für jeden Teilnehmer ein USB Lanyard mit Content passend zur PDC

Es sind alle herzlich eingeladen beim Event mitzumachen!
Vielen Dank an dieser Stelle an die Firma AX Solutions, die das Sponsoring für diese Veranstaltung übernimmt.

ACHTUNG: Um Anmeldung bei Lars (keller [@] dotnet-braunschweig [dot] de) oder Karim El Jed (el_jed [@] dotnet-braunschweig [dot] de) wird gebeten, da der Besprechungsraum nur begrenzt Platz bietet.

.NET Open Space - ein Rückblick

17.10.2010 17:47:00 | Martin Hey

#netos - wer an diesem Wochenende die Tweets in der Leipziger Twitterszene verfolgt hat, der wird häufiger über diesen Hashtag gestolpert sein. Grund dafür war ein Event, der mittlerweile seinen festen Platz in der deutschen .NET-Community gefunden hat: der .NET Open Space. Jedes Jahr pilgern knapp 150 .NET-Entwickler und -Interessierte nach Leipzig, um sich hier mit Gleichgesinnten auszutauschen. Auch ich war dabei und möchte meine Eindrücke zum Besten geben. Ich war schon im letzten Jahr mit dabei und natürlich ist man dann versucht, auch immer einen Vergleich zu ziehen.

Im letzen Jahr fand der .NET Open Space in der Villa Ida statt. Und da der frühe Vogel ja bekanntlich den Wurm fängt, buchte ich mir auch ein Hotelzimmer in der Nähe. Etwas überrascht wurde ich dann, als bekannt wurde, dass es in diesem Jahr einen anderen Veranstaltungsort geben würde. Da wir ja alle agil sind, ist auch das natürlich kein Problem - schnell umgebucht und alles in Butter - einzig der Hotelbetreiber wird sich etwas gewundert haben, denn wie ich erfahren habe, war ich mit meiner Stornierung nicht allein.

Beginn der Veranstaltung war dann Samstag um 10:00 Uhr. Einige der Teilnehmer reisten schon am Freitag an, um an der Kennenlern-Party teilzunehmen oder erholt am Samstag starten zu können. Bei der Party war ich leider nicht dabei, da ich einer derjenigen war, die erst am Samstag dazustießen.

Nach und nach trafen alle ein und schnell sah man auch bekannte Gesichter und der Smalltak begann, den nur ein Pfiff unterbrechen konnte: Es war an der Zeit, die Agenda zu füllen. Jeder, der wollte konnte ein Thema vorschlagen und viele haben auch diese Gelegenheit genutzt, das zu tun. Gefühlt war die Themenfindung in diesem Jahr etwas träger und unorganisierter als im letzten Jahr, aber es ist halt schließlich eine Unkonferenz und warum nicht auch das kreative Chaos nutzen.

Was für Themen kamen da zusammen? Natürlich durften aktuelle Buzzwords wie Agilität, *DD und Windows Phone 7 nicht fehlen und so kam es zu einer bunten Themen-Mischung über Methodik, Architektur und Softskills. Auch wenn letzteres auf den ersten Blick für einige nicht zu einer Entwicklerkonferenz gehören mag, so ist es eben auch wichtig Fragen zu klären wie "Wie bringe ich eigentlich meinen Kollegen bei, die Werte die ich habe auch zu vertreten." - und das ist eben nicht nur Methodik sondern auch der menschliche Faktor. Zusammengefasst waren die eher technisch geprägten Themen aber in der Überzahl: Was sind eigentlich Monaden? Wozu sind EBCs gut? Wann lohnt es sich, eine funktionale Programmiersprache wie F# zu verwenden? Wie mach ich sinnvollerweise Logging? Welche AddIns sind empfehlenswert? ... und so weiter und so fort. Auch ein Coding Dojo war wieder dabei, das aber nach meinem Empfinden in diesem Jahr besser lief, da gleich mehrere Gruppen gebildet wurden und so in einem kleineren Kreis intensiver gearbeitet werden konnte. Aber genug vom Fachlichen: Wer es selbst erleben möchte, der möge selbst an einem .NET Open Space teilnehmen und seine eigenen Erfahrungen sammeln - es lohnt sich.

Abseits der Diskussionen gab es aber auch noch das Abendessen am Samstag in der Schaubühne Lindenfels und dem Joseph Pub - mit klarer Präferenz für zweiteres meinerseits und ich glaube der ein oder andere sieht das ähnlich. Und auch die Mittagessen, die dieses Mal im Vergleich zum Vorjahr eher mit bekannte Gerichte aufwarteten, boten genug Raum dafür, sich auszutauschen und neue Leute kennenzulernen oder über andere Ansichten und Erfahrungen zu diskutieren.

Alles in allem ist mein Resümee ein postives. Ich habe es in keinem Fall bereut, dieses Wochenende in Leipzig verbracht zu haben. Egal ob Freak oder Quatschaffe - es hat Spaß gemacht mit euch zu diskutieren und dabei gewesen zu sein und man sieht sich beim nächsten Mal.

HowTo: HTML Input Validation mit ASP.NET MVC & ASP.NET 4 (oder warum geht ValidateInput(false) nicht?)

17.10.2010 17:39:04 | Robert Mühsig

Das ASP.NET Framework validiert einkommende Requests ob diese <html> Elemente enthalten oder nicht. Dies soll Script-Injection vorbeugen. Ab und an braucht will man aber dieses verhalten nicht. Bis zu .NET 3.5 Zeiten brauchte man über ASP.NET MVC Actions einfach nur das Attribut “ValidateInput(false)” setzen. Unter ASP.NET 4 muss man noch eine Kleinigkeit beachten Szenario: Simples [...]SHARETHIS.addEntry({ title: "HowTo: HTML Input Validation mit ASP.NET MVC & ASP.NET 4 (oder warum geht ValidateInput(false) nicht?)", url: "http://code-inside.de/blog/2010/10/17/howto-html-input-validation-mit-asp-net-mvc-asp-net-4-oder-warum-geht-validateinputfalse-nicht/" });

HTC Home for Windows [Kostenloser Download]

17.10.2010 10:20:09 | Kay Giza

HTC Home for Windows (oder gerne auch HTC Home für Windows), so heißt eine Open Source Freeware, die den HTC Homescreen bzw. Startbildschirm, direkt auf dem Windows Desktop (Windows Vista und Windows 7) zur Verfügung stellt. Wer genauso wie ich, Fan von HTC-Handys ist, wer die animierte Uhr mit Wetter auf seinem Handy cool findet, dem kann ich nur Empfehlen sich diesen kostenlosen Download einmal genauer anzuschauen. HTC Home für Windows wurde in C# und WPF in Visual Studio 2010 geschrieben und steht als Open Source Anwendung kostenlos auf Codeplex, Microsoft Open Source Community Plattform, zur Verfügung... [... alle Details, Videos, Screenshots und Download-Links finden Sie in diesem Blogposting auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Egg-Bot ist da

16.10.2010 20:04:00 | Daniel Springwald

Egg-Bot ist ein OpenSource-Projekt, für einen Grafik-Plotter, welcher auf Kugeln oder eiförmigen Körpern zeichnen kann.

Gestern war dann endlich der Egg-Bot Bausatz in der Post und heute habe ich schon Zeit gefunden, ihn zusammen zu bauen:

Das sind alle Teile, aus denen Egg-Bot besteht:

Halbzeit! Egg-Bots zwei Schrittmotoren und das Gehäuse sind fest montiert.

Der erste Versuch mit einem hart gekochten Ei und einem simlpen Muster:

Fertig: Mein erstes, mit Egg-Bot bemalte Ei:

Jetzt kann das nächste Ostern kommen! Bis dahin sollte ich hoffentlich ausreichend mehrfarbige Motive für Egg-Bot zusammen gestellt haben.

NuPack – eigene Packages erstellen

15.10.2010 00:39:00 | Jürgen Gutsch

Eigene Packages für NuPack zu erstellen ist eigentlich recht simpel. Man benötigt lediglich Mercurial um die Sourcen von http://nupackpackages.codeplex.com/ herunter zu laden. Möchte man seine Packages nicht der Allgemeinheit zur Verfügung stellen, sondern Packages für den internen Gebrauch erstellen ist das ebenfalls möglich. Die Packages müssen nicht über das öffentliche RSS Feed publiziert werden, sondern können von einem Lokalen oder einem Netzwerkpfad geladen werden.

In den Options (“Tools => Options…”) gibt es einen Konfigurationspunkt für die Bezugsquellen der Packages. Neben dem bereits vorhandenen Feed können hier weitere Feeds oder Verzeichnisse eingetragen werden welche die Packages enthalten.

Am Beispiel der LightCore Packages, die ich den NuPack Packages zur Verfügung gestellt habe, möchte ich hier kurz demonstrieren wie man eigene Packages erstellt und auf Codeplex zur Verfügung stellt.

Eine Dokumentation gibt es selber schon auf Codeplex unter http://nupackpackages.codeplex.com/. Desweiteren sollte man sich bereits vorhandene Packages anschauen, um zu sehen wie es dort umgesetzt worden ist.

Mercurial

Die NuPack Packages werden mit dem Source Code Managemant System Mercurial über Codeplex bereitgestellt. Dafür sollte am besten der Client TortoiseHG installiert werden der hier zur Verfügung gestellt wird: http://mercurial.selenic.com/downloads/

Grundkenntnisse zu Mercurial setze ich hier voraus. Wer Mercurial nicht kennt sollte sich also entweder die Doku anschauen oder schon mal zuvor mit TortoiseHG herumgespielt haben.

Um die Struktur der Packages kennen zu lernen ist es sinnvoll sich zuvor die Sourcen zu laden. Hierfür sollte das Repository von Codeplex “geklont” werden. Die URL lautet wie folgt: https://hg01.codeplex.com/nupackpackages

Die Strukturn

Es sollte folgende Ordnerstruktur aufgebaut werden:
(hier verwende ich zu Demozwecken die Struktur von LightCore )

LightCore
|-- 1.4.1
       |—Content
       |—Lib
       |-- Tools

Der erste Ordner hat den Namen des Packages, der zweite ist die Version und in der dritten Ebene enthält folgende Ordner:

  • Content: Enthält Files die in das Projektverzeichnis kopiert werden, wie Beispiele, Configs, etc.
  • Lib: enthält die eigentlichen Assemblies die als Referenz eingefügt werden sollen
  • Tools: enthält Tools für die Libraries (das können Test-Runner, LogParser, etc. sein) dafür wird ein Ordner “Tools” im Projektverzeichnis angelegt

Um Assemblies für verschiedene Frameworks und Plattformen bereitzustellen, kann der Ordner “Lib” weiter unterteilt werden. Es müssen Unterordner erstellt werden mit denen die Plattformen und Frameworks unterschieden werden können. Eine Detaillierte Beschreibung der Ordnernamen ist hier zu finden: Creating a Package

Lizenzdateien und ähnliches können in den Ordner mit der Versionsnummer abgelegt werden. Dort muss zudem noch eine XML Datei mit dem Namen “LightCore.nuspec” liegen (wobei hier wieder der Package-Name genutzt wird) Diese Datei enthält Metadaten zu dem Package, wie Autor, Beschreibung, etc. Im Falle von LightCore sieht das XML wie folgt aus:

<?xml version="1.0" encoding="utf-8"?>
<package>
  <metadata>
    <id>LightCore</id>
    <version>1.4.1</version>
    <description>LightCore is a lightweight dependency injection container which can be used as a service locator, too. Despite its simplicity and its lightness there are lots of features to explore.</description>
    <authors>
      <author>Peter Bucher</author>
    </authors>
    <language>en-US</language>
  </metadata>
</package>

Die Assembly “LightCore.Integration.Web.dll” habe ich in einem separaten Package untergebracht, welches das LightCore Package benötigt. Hierfür wird eine Abhängigkeit zum LightCore Package in der *.nuspec-Datei eingelegt:

<?xml version="1.0" encoding="utf-8"?>
<package>
  <metadata>
    <id>LightCore.WebIntegration</id>
    <version>1.4.1</version>
    <description>LightCore is a lightweight dependency injection container which can be used as a service locator, too. Despite its simplicity and its lightness there are lots of features to explore. This package integrates implementations to use in ASP.NET WebForms and ASP.NET MVC</description>
    <authors>
      <author>Peter Bucher</author>
    </authors>
    <language>en-US</language>
  </metadata>
  <dependencies>
    <dependency id="LightCore" version="1.4.1" />
  </dependencies>
</package>

Wichtig ist zu beachten, dass die anderen LightCore Assemblies nicht im zweiten Package enthalten sein dürfen, damit es nicht zu doppelten Referenzierungen kommt. Damit die benötigten Assemblies dennoch referenziert werden, wird die Abhängigkeit zu einem anderen Package definiert.

Das Package testen

Ist das Package also nun angelegt, sind alle Files enthalten und ist die entsprechende *.nuspec-Datei erstellt, kann das Package getestet werden. Hierfür muss das Package  nur in das mit Mercurial geklonte Repository gelegt werden. Im Root des Repositories befindet sich eine Datei namens “RebuildPackages.cmd” die nun aufgerufen werden muss. Diese Command-Datei erstellt nun ein Verzeichnis mit dem Namen “NuPackPackages” und legt dort alle Packages aufbereitet und verzippt ab. Die Packages haben die Endung “*.nupkg”

Nun kann wie oben beschrieben der Pfad zu diesem Verzeichnis als Source im Package Manager (unter “Tools => Options… => Package Manager”) angegeben werden. Die Packages können jetzt wie unter NuPack - externen Libraries einfach einbinden beschrieben genutzt werden.

Das Package publizieren

Um das eigene Package zu publizieren und der Öffentlichkeit zugänglich zu machen, muss es in das Repository aufgenommen werden. Das passiert mit einem festgelegtem Workflow:

  1. Es muss unter http://nupackpackages.codeplex.com/ ein eigener Fork erstellt werden. Dafür wird ein Account auf Codeplex benötigt.
  2. Ist dieser Fork erstellt, muss dieser mit Mercurial auf den lokalen Rechner geklont werden. Nun kann man dort das Package (entsprechend den bereits vorhandenen) einfügen, mit TortoiseHG in den Clone einfügen und in den erstellte Fork auf Codeplex publizieren.
  3. Auf Codeplex muss nun ein sogenannter “Pull Request” gestartet werden (Den Link dazu findet man auf Codeplex rechts vom eigenen Fork). Hier sollte eine Aussagekräftige Beschreibung (auf English) und falls vorhanden der Twittername eingefügt werden.
  4. Die Koordinatoren des Projektes prüfen nun den Pull Request und entscheiden ob das neue Package in das Projekt eingebunden wird oder nicht. Das kann mehrere Stunden in Anspruch dauern.
  5. Wird das Package im ersten Anlauf nicht akzeptiert, erhält man eine E-Mail mit einer aussagekräftigen Begründung. So ging es mir beim Einfügen von LightCore. Ich hatte doppelte Assemblies und Abhängigkeiten vergessen.
  6. Nach der Behebung des Fehlers kann der Pull Request einfach noch einmal gestartet werden, sobald die Änderungen in Fork sind.
  7. Läuft alles glatt, so wird das Package akzeptiert und wird nun im offiziellen Feed veröffentlicht und kann wie unter NuPack - externen Libraries einfach einbinden beschrieben genutzt werden.

Fazit

Man sieht, dass es im Grunde recht einfach ist ein eigenes Package zu erstellen und zu veröffentlichen. Um LightCore noch ein bisschen mehr zu puschen, habe ich mich entschlossen, zwei Packages für LightCore zu erstellen und zu veröffentlichen.

Ich bin allerdings nicht sicher, in wie weit die Projektverantwortlichen darauf achten werden, dass nicht jede blöde Assembly als Package angeboten wird, sondern nur Tools die wirklich relevant sind. Von daher war ich eigentlich überrascht das LightCore so einfach und schnell akzeptiert worden ist. Entweder werden gerade zu Anfang noch relativ viele Assemblies einfach so akzeptiert oder LightCore ist tatsächlich schon in den USA zu einer gewissen Bekanntheit gelangt. Vielleicht hat aber auch nur die Überprüfung der Assembly und der Projektseite http://lightcore.ch/ ergeben, dass es sich hier um eine relevante und nützliche Assembiel handelt.

Wie auch immer, hoffe ich, dass nicht jede beliebige Assembly als Package angeboten wird und das Angebot zumüllen wird.

Was bei NuPack noch fehlt, gerade das es im Moment immer mehr wächst, sind Kategorien die das Browsen und suchen nach Tools vereinfachen. Natürlich nutzt man in erster Linie nur bekannte Assemblies und sucht speziell nach denen. Allerdings ist NuPack auch Ideal um neue und unbekannte Tools kennen zu lernen. Ich würde mir also wünschen, wenn ich speziell nach Test-Frameworks, DI-Containern oder OR-Mappern schauen könnte.

DotNetKicks-DE Image

NuPack - externen Libraries einfach einbinden

14.10.2010 14:46:00 | Jürgen Gutsch

Anfang der Woche bin ich auf NuPack gestoßen und habe mich näher damit beschäftigt.

Scott Hanselman:
NuPack is a package management system for .NET. The goal of NuPack is to make the process of incorporating third party libraries into your solutions as simple as possible.

Genauer: NuPack ist eine konsolenanwendung mit einer PowerShell Integration und eine Integration in das Visual Studio 2010 die es ermöglicht externe Libraries als Pakete herunterzuladen und direkt in das eigene Projekt einzubinden. Es muss also nicht mehr manuell heruntergeladen, entpackt und im eigenen Projekt referenziert werden. Updates von Libraries gestaltet sich ebenso einfach. Diese Aufgaben übernimmt NuPack.

Das Prinzip ist nicht neu, sonder ist Abgeschaut von Ruby Gems.

Nicht nur ich, habe mir NuPack genauer angeschaut, sondern auch de üblichen Verdächtigen, wie Scott Hanselman und Phil Haak:
Introducing NuPack Package Management for .NET - Another piece of the Web Stack
Introducing NuPack Package Manager

NuPack im Visual Studio

NuPack wird als Extension im Visual Studio 2010 installiert und ist im Extension Manager sichtbar:

Um eine neue Referenz auf eine externe Library einzufügen kann man wie gewohnt mit einem Rechtsklick auf den Referenzenordner machen. Nur dass man jetzt zusätzlich noch den Punkt “Add Package Reference…” zur Verfügung hat:

Es öffnet sich nun der Package Manager aus dem die gewünschte Komponente ausgewählt werden kann:

Ich habe Peter Buchers LightCore als NuPack Package veröffentlicht, das nun im Package Manager angezeigt wird und zur Auswahl bereit steht. Wie man ein eigenes Package erzeugt und bereit stellt, habe ich in Beitrag NuPack – eigene Packages erstellen beschrieben.

Nach dem Klick auf “Install” werden nun die Referenzen auf LightCore in das Projekt eingefügt. Zusätzlich befindet sich im Projekt eine Datei mit dem Namen “packages.config”, welche eine Liste mit installierten Packages und deren Versionen enthält:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="LightCore" version="1.4.1" />
</packages>

Das ist alles um eine externe Library zu referenzieren und zu nutzen. Neben LightCore gibt es eine ganze Menge weiterer Libraries, die in NuPack enthalten sind: NUnit, NHibernate, Castle, Elmah, log4net, NLog und viele andere.

Im Moment wächst die Anzahl der Libraries stündlich weiter an :-)

Im Visual Studio ist neben dem Package Manager auch eine auf Power Shell basierende Konsole enthalten. Unter “View => Other Windows => Package Manager Console” kann die Konsole aufgerufen werden. Der Befehl “List-Package” listet beispielsweise alle vorhandenen Packages auf:

Das Hinzufügen einer Referenz lässt sich natürlich auch über diese Konsole erledigen..

Die vorhandenen Packages werden übrigens auf eine wirklich simple Art bekannt gemacht. Sie werden ganz einfach als RSS Newsfeed veröffentlicht NuPack ließt nur das Feed ein, das alle nötigen Informationen über die einzelnen Packages enthält. Die Adresse des Feeds lautet: http://go.microsoft.com/fwlink/?LinkID=199193

DotNetKicks-DE Image

Build Messages in CodeActivities in Teambuild 2010

14.10.2010 11:59:00 | Martin Hey

Wer in TFS 2008 eigene Build-Tasks geschrieben hat und dabei von der abstrakten Basisklasse Task abgeleitet hat, wird wissen,dass es recht einfach war, Meldungen ins Log zu schreiben. Die Klasse stellte ein Objekt Log zur Verfügung, das über die passenden Methoden verfügte.
In TFS 2010 ist die Workflow-Engine Grundlage des Teambuilds. Dieser ist auch weiterhin erweiterbar - nur wird nun nicht mehr von der Klasse Task, sondern von der Klasse CodeActivity geerbt. Nur leider bietet diese Klasse eben kein solches Log-Objekt mehr.
Abhilfe schafft hier der Microsoft.TeamFoundation.Build.Workflow.Activities-Namespace. Ist dieser über eine using-Direktive eingebunden, so stehen auf dem context-Objekt drei Extension-Methods zur Verfügung, die das Logging übernehmen können.
using System.Activities;
using Microsoft.TeamFoundation.Build.Workflow.Activities;

namespace CustomActivityLibrary
{
public sealed class CodeActivity1 : CodeActivity
{
protected override void Execute(CodeActivityContext context)
{
context.TrackBuildMessage("this is a message");
context.TrackBuildWarning("this is a warning");
context.TrackBuildError("this is an error");
}
}
}

Neues Web Camp im Dezember

12.10.2010 14:54:20 | Oliver Scheer

Am 16.Dezember gibt es eine zweite Chance in diesem Eintages-Workshop die Programmierung beeindruckender Web-Anwendungen auf Basis von ASP.NET MVC 2 zu erlernen!

clip_image001

Hier geht’s zur Anmeldung!

In einem ersten Block werden die Grundlagen von ASP.NET MVC erläutert. Dabei lernen Sie den Umgang mit ASP.NET MVC und Visual Studio Web Developer 2010 Express anhand eines einfachen Beispiels.

Darüber hinaus wird auch darauf eingegangen, wie Sie mit Hilfe SQL Server Express eine Datenanbindung implementieren. Alle verwendeten Tools für diesen Workshop sind kostenlos als Download verfügbar.

Agenda

Start Time

Dauer

Inhalt

9:00

10’

Begrüßung und Agenda

9:10

50’

MVC Fundamentals

10:00

50’

Data Access und Modeling

10:50

10’

Pause

11:00

50’

Forms und Validation

11:50

10’

Q&A

12:00

60’

Mittagspause

13:00

3 h

Labs und App Building

16:00

10’

Zusammenfassung

Bitte bringen Sie folgendes mit:

  • Notebook
  • Notizblock

Für Verpflegung während des Tages ist natürlich gesorgt clip_image003

Wir freuen uns auf Ihre Anmeldung!

Mails versenden mit Outlook und Dynamics

12.10.2010 12:27:00 | Martin Hey

Ein altbekanntes Problem, aber eines, das auch in Foren immer wieder gestellt wird ist "Wie kann ich Mails mit Outlook versenden?" - nach Möglichkeit unabhängig von der Outlook-Version des Anwenders.
Ein Weg unter vielen ist die Verwendung der Dynamic Language Runtime. Diese gibt es seit dem .NET Framework 4.0 und sie erlaubt einen Zugriff auf Typen, die in ihrer wirklichen Ausprägung erst zur Laufzeit fest stehen. Einen Überblick über die Grundzüge und die Möglichkeiten der DLR gibt es in der MSDN.
In der Praxis sieht das Ganze dann in etwa so aus:
private void ComposeEmail(string receipient, string subject, string body)
{
const int olMailItem = 0;

dynamic outlookApp = GetOutlookApplication();
if (outlookApp == null)
{
MessageBox.Show("Outlook konnte nicht initialisiert werden.");
return;
}

dynamic mailItem = outlookApp.CreateItem(olMailItem);
mailItem.To = receipient;
mailItem.Body = body;
mailItem.Subject = subject;
mailItem.Display();
//mailItem.Send();
}

private dynamic GetOutlookApplication()
{
// try to get an existing outlook instance
try
{
dynamic outlookApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Outlook.Application");
return outlookApp;
}
catch (System.Runtime.InteropServices.COMException)
{
}

// try to get an existing outlook instance
try
{
dynamic outlookApp = System.Activator.CreateInstance(System.Type.GetTypeFromProgID("Outlook.Application"));
return outlookApp;
}
catch
{
return null;
}
}

Die Funktion GetOutlookApplication versucht zunächst eine laufende Outlook-Instanz zu ermitteln. Schlägt das fehl wird eine neue Instanz geöffnet. Dabei wird das Objekt über den Registry-Eintrag "Outlook.Application" referenziert. Dies ist ein Verweis auf die jeweils aktuelle Outlook-Installation.

Die ermittelte Outlook-Instanz wird dann verwendet, um ein neues MailItem zu erzeugen. Im Beispiel wird das Item nur angezeigt, damit der Kunde es noch bearbeiten kann. Durch die Verwendung von Late Binding mit dem dynamic Schlüsselwort ist zur Entwicklungszeit irrelevant, welche Version der Kunde installiert hat. Die Überprüfung erfolgt erst zur Laufzeit. Wird dann auf eine Eigenschaft oder Methode zugegriffen, die es bei dem real vorliegenden Objekt nicht gibt, so wird ein RuntimeException geworfen, die es zu behandeln gilt.

Promocode für die Microsoft Information Days & Roadshows

12.10.2010 01:52:00 | Lars Keller

Wie in meinem Blogpost zur deutschen Microsoft Partnerkonferenz 2010 angekündigt, habe ich bei meinem Gespräch mit Steffen Ritter über verschiedene Microsoft Entwickler Veranstaltungen gesprochen. Bei diesem Gespräch hatte mir Steffen versprochen einen Promocode für die Veranstaltungen zukommen zu lassen. Gesagt getan und hier ist er! :-)

Mit dem Promocode “VSlkr” können sich beliebig viele Unternehmen, pro Unternehmen bis zu jeweils zwei Personen, für jede dieser Veranstaltungen kostenlos anmelden.

Visual Studio Information Day

Nehmen Sie an der ganztägigen Veranstaltung zu Visual Studio teil, die sich anhand zahlreicher Live Demos, unter anderem mit Qualitätssteigerung durch reproduzierbare Fehler, Fehlerminimierung in den Aufgaben sowie verbesserte Planbarkeit durch Transparenzerhöhung in Ihren Projekten beschäftigt. Erleben Sie Visual Studio 2010 live und praxisbezogen!

Test Information Day: Integrierte Qualitätssicherung – nie mehr „No Repro Bugs“

Microsoft liefert Ihnen mit Visual Studio 2010 integrierte Lösungen für Ihre gesamte Qualitätssicherung, die alle Qualitätsaspekte in der Anwendungsentwicklung und im fachlichen Testen abdecken. Unsere neue Lösung verbessert die Zusammenarbeit zwischen allen Mitgliedern eines Softwareteams, insbesondere werden Fachseite, Entwicklung und Testabteilung besser miteinander in Einklang gebracht.

Das Ergebnis: Kundenanforderungen werden besser verstanden und in höherer Qualität umgesetzt, nicht-reproduzierbare Fehler werden massiv verringert und gefundene Fehler schneller als bisher behoben.

SharePoint Development Information Day

Während der ganztägigen Veranstaltung erleben Sie zahlreiche Live Demos, die sich unter anderem den Themen Qualitätssteigerung durch tägliche Builds, Fehlerminimierung in den Aufgaben sowie verbesserte Planbarkeit durch Transparenzerhöhung in Ihren SharePoint Projekten widmen.

Azure Information Day

Während der ganztägigen Veranstaltung werden alle Komponenten und Dienste, die Windows Azure mitbringt, ausführlich betrachtet. Neben einem technischen Überblick erhalten Sie auch alle Informationen zu dem günstigen verbrauchsorientierten Bezahlmodell, das nur die tatsächlich genutzte Serverzeit berechnet. Ebenso stellen wir Ihnen verschiedene Einsatzszenarien wie auch Architekturszenarien für Windows Azure basierte Anwendungen vor.

Lasttest Roadshow

Erleben Sie in zahlreichen Demos die Möglichkeiten, Ihre Software noch leistungsfähiger zu machen. Mit den richtigen Tests im Laufe des gesamten Entwicklungszyklus lassen sich die Kosten senken und gleichzeitig die Qualität erhöhen. Wie Sie das schaffen, zeigen wir Ihnen in der halbtägigen Veranstaltung, in der Sie alles rund um die Testtools von Visual Studio 2010 erfahren.

Anmeldungen und Gesamtübersicht inkl. Agenden usw. sind hier: http://www.event-team.com/events/InfoDays/

Interessante Veranstaltungen wie ich finde, gerade die Themen “Lasttest” und “Integrierte Qualitätsicherung” finde ich sehr spannend!

Viel Spaß beim Besuchen der Veranstaltungen! :-)

S3 : Microsoft Software Strategy Summit 2010 ALM Demos als Video

11.10.2010 17:57:41 | Christian Binder

www.microsoft-s3.com

In der Session Application Lifecycle Management Produktivität trotz Qualität?  hatten wir einige kurze Demos gezeigt. Jetzt habe ich einige Anfragen erhalten, ob die Demos einzeln zum Download verfügbar sind, da Sie so kompakt waren.

S3 Zusammenarbeit Test und Development

S3 Abhängigkeiten zwischen Codeartefakten visualisieren

Konnte ich ja leider nicht mehr zeigen. Also auch für alle Anwesenden eine kleine Zugabe :-)

S3 Architektur Validierung

Viel Spass

PDC Public Viewing bei der .NET Usergroup Dresden am 28.10.2010

08.10.2010 19:54:00 | Martin Hey

Am 28. und 29. Oktober veranstaltet Microsoft in Redmond die Professional Developers Converence. Zur Eröffnung gibt es deutschlandweit in vielen Usergroups ein Public Viewing der Keynote. Auch wir sind mit dabei und möchten gemeinsam mit euch die Gelegenheit nutzen und diesen Event in das Oktober-Treffen der Usergroup einbetten. In lockerer Runde können wir so fachsimpeln, ein paar interessante Anregungen mitnehmen, Ankündigungen diskutieren und neue Kontakte knüpfen.

Nach der Keynote gibt es auch noch eine Verlosung. Zu gewinnen gibt es die folgenden Produkte:
  • 1x Visual Studio 2010 Professional (NFR)
  • 1x Windows 7 Ultimate (NFR)
  • 1x Competition Pro C64 USB-Joystick und eine umfangreiche Spielesammlung
Alle angemeldeten Teilnehmer, erhalten noch einen USB-Lanyard.

Die Keynote beginnt um 18:00 Uhr. Deshalb treffen wir uns dieses Mal schon um 17:45 Uhr bei der T-Systems MMS. Die Teilnehmerliste befindet sich wie gewohnt im Xing.

Ich freue mich schon auf euer Erscheinen und vielleicht können wir ja auch das ein oder andere neue Gesicht in unserer Runde begrüßen.

GUI&Design

07.10.2010 11:42:11 | Peter Kirchner

1. Fachkonferenz rund um Grafische Benutzeroberfläche und Design

am 8. und 9. Dezember 2010
im Karl-Bröger-Zentrum, Karl-Bröger-Str. 9, 90459 Nürnberg

Die Software der Zukunft wird über ihr Aussehen verkauft. Und ob das gefällt, entscheidet einzig und allein der Käufer. Um erfolgreiche Software zu entwickeln, müssen also zwingend die Bedürfnisse und Ansprüche des Users im Vordergrund stehen.

Auf der GUI&Design präsentieren Ihnen Branchenexperten DIE Trends rund um die Software der Zukunft auf Basis von Microsoft-Technologien. Lernen Sie neue Design-Ideen kennen. Erfahren Sie, wie mehr Umsatz generiert werden kann mit Anwendungen, die cool aussehen und leichter bedienbar sind. Informieren Sie sich über Designs für mehrere Plattformen, Barrierefreiheit, Internationalisierung u.v.m.

Sichern Sie sich bis 31. Oktober 2010 Ihre Teilnahme zum Frühbucherpreis von 699,00 EUR statt 899,00 EUR und Sie erhalten mit dem Promocode GUI-HG4u zusätzlich zum Frühbucherrabatt eine Hotelübernachtung in Nürnberg gratis zu Ihrer Konferenz-Anmeldung dazu! Melden Sie sich hier online zur GUI&Design an http://www.gui-design.ppedv.de/anmeldung.aspx, oder senden Sie eine E-Mail an Events@ppedv.de.

Neue Folge von Silverlight-Expertise: “Umlaute und Sonderzeichen in XAML” und “TextBox mit Wasserzeichen”

07.10.2010 11:24:57 | Gregor Biswanger

dotnet-magazin-logo

In der aktuellen Ausgabe vom dot.net magazin gibt es eine neue Folge von meiner Silverlight-Kolumne “Silverlight-Expertise”:  

Silverlight-Expertise - Die Crème de la Crème des Monats
Die Serie „Silverlight Expertise“ des dot.NET Magazins präsentiert monatlich zwei leckere Top-How-Tos zum Thema Silverlight von Gregor Biswanger (www.dotnet-blog.net), sodass Einsteiger und fortgeschrittene Silverlight-Experten durch geballtes Wissen gesättigt werden. Heute stehen auf der Menükarte „Umlaute und Sonderzeichen in XAML“ und „TextBox mit Wasserzeichen“. Viel Spaß und einen guten Appetit.

dotnet-magazin_112010

Zu lesen sind die How-To´s beim dot.net magazin, Ausgabe 11/2010

Neues CMS für den .NET-Stammtisch Konstanz-Kreuzlingen

06.10.2010 15:57:04 | Jürgen Gutsch

Es ist wieder mal so weit und die Website des .NET-Stammtisch Konstanz-Kreuzlingen wird zum zweiten Mal auf ein neues System migriert und geht in wenigen Tagen mit diesem neuen System online.

Warum das ganze?

Die erste Website basierte auf dem – mit ASP.NET MVC – selbstgestrickten Community CMS .NETKK. Da mir aber immer mehr die Zeit fehlte das .NETKK – trotz Peters Hilfe – weiterzuentwickeln und fertig zu stellen, war es Zeit eine fertige Lösung zu suchen.

Die schnellste Lösung war damals das DotNetNuke. Allerdings ist dieses System nur eine temporäre Notlösung.

Das DotNetNuke ist schnell installiert und aufgesetzt, aber die Administration ist unübersichtlich und die Content-Pflege ist viel zu aufwendig. Customizing ist nur mit Entwicklungsaufwand möglich, von dem ich eigentlich wegkommen wollte.

Wir waren also auf der Suche nach einem System, dass einfach, schnell und intuitiv zu bedienen ist.

Und das sharpcms?

Das sharpcms ist ein kleines und hochflexibles CMS, hat aber aus gutem Grund kaum Features integriert. Es wäre zwar möglich mit dem sharpcms eine kleine Website aufzusetzen, aber die von mir gewünschten Features wären nicht drin. Das sharpcms ist rein für kleinere Internet-Präsenzen ausgerichtet die nicht viele Funktionen benötigen, außer das darstellen und ändern von Content.

Folgendes sollte ein CMS aber bieten um eine Community Website aufzusetzen:

  • Benutzerbereich
  • Veranstaltungskalender
  • News / Blogsystem
  • Bildergalerien
  • Dateienverwaltung
  • Newsletter
  • Online-/Offlineschaltung von Einzelseiten

Meine persönlichen Anforderungen war, dass es sich um ein Seiten-orientiertes CMS handeln sollte, da es intuitiver zu bedienen ist, als ein Content-orientiertes CMS. Schließlich möchte ich bei einer Website in erster Linie Seiten bearbeiten. (Vor nicht allzu langer Zeit kämpfte ich mit einem Content-orientiertem CMS: Der Content war schnell angelegt, allerdings brauchte ich eine ganze Weile um zu verstehen, wie ich diesen Content auf einer bestimmten Seite ausgebe.)

Die Suche nach dem richtigen CMS

Ein CMS zu finden, das meinen Ansprüchen gerecht wird, ist schwierig. Entweder sind die Systeme nicht intuitiv bedienbar und nur mit enormen Schulungsaufwand zu beherrschen oder die annähernd intuitiv bedienbaren Systeme bieten nicht ausreichende Features, bzw. der Entwicklungsaufwand für eine Website ist zu hoch.

Welches CMS denn nun?

Ich bin natürlich auch verwöhnt: Bei der K&K Internet GmbH arbeitete ich mehrere Jahre unter anderem an der Weiterentwicklung des CMS add.min und orientiere mich bei der Suche nach einem passendem CMS natürlich immer an diesem CMS. Wodurch meine Erwartungen sicherlich viel zu hoch gesteckt waren.

add.min CMS

Nun war die See# Party nicht nur eine großartige Veranstaltung, sondern auch der Auslöser für einen glücklichen Zufall, denn die K&K Internet GmbH bot uns an, die Website der See# Party mit dem add.min zu hosten. Die K&K Internet GmbH war damit nun Hosting-Sponsor der See# Party. Ich durfte also nach fast dreieinhalb Jahren mal wieder ein Web mit dem add.min umsetzen :-)

Gestern nun wurde bestätigt, was bei den Vorbereitungen zu See# Party nur beiläufig erwähnt wurde: Der .NET-Stammtisch Konstanz-Kreuzlingen kann nun seine Website ebenfalls mit dem add.min hosten.

Die K&K Internet GmbH ist somit auch Hosting-Sponsor des .NET-Stammtisch Konstanz-Kreuzlingen.


Im Namen des .NET-Stammtisch Konstanz-Kreuzlingen bedanke ich mich hierfür ganz herzlich bei der K&K Internet GmbH :-)

DotNetKicks-DE Image

Silverlight params aus dem object - Tag

06.10.2010 15:38:33 | Paul Mizel

Es gibt in Silverlight einen initParameter für alles, ich würde aber gerne eigene Schlüsselwörter verwenden.<object type="application/x-silverlight"          width="100%" height="100%">   <param name="source"          value="ClientBin/SLInitParams.xap"/> <!-- startPage key can have values Page1 or Page2 -->   <param name="initParams"          value="uid=0,token=asdg" /> </object>  Standard ist in den Parameter initParams, parameterliste zu übergeben ich finde es wäre schöner die paremter zu trennen, und die Idee ist sowas zu verwenden, <param name="uid" value="0" /> <param name="token" value="ABFGX00121" /> zu nutzen und hier [...]

IE6 und IE7 Detection Script zur Einbindung auf der eigenen Webseite

06.10.2010 15:27:14 | Kay Giza

In diesem Beitrag erfahren Sie, wie sie auf einfache Art und Weise Ihren Webseitenbesuchern zeigen können, das sie einen veralteten Browser (IE6 / IE7) einsetzen. Dafür haben wir vom Microsoft Developer Network (MSDN) ein Script entwickelt, welches Webseitenbetreibern eine einfache, schnell umsetzbare und gezielte Möglichkeit gibt, ihre Besucher auf die Nutzung veralteter Internet Explorer-Versionen hinzuweisen. Das Script erkennt und unterscheidet die unterschiedlichen Internet Explorer-Versionen nicht wie eine klassische Browserweiche anhand des User Agent Strings, sondern ermittelt die Versionsnummer aufgrund der Funktionsunterschiede der jeweiligen JavaScript-Engines. Nutzer von Browsern anderer Hersteller werden von dem Script nicht berührt. Wie die sekundenschnelle Implementierung funktioniert und was genau dahinter steckt, erfahren Sie in diesem ausführlichen Blogeintrag auf Giza-Blog.de... [... mehr]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Bing Maps: Kostenfreies Info-Event zum Thema Geomarketing

06.10.2010 14:50:00 | Kay Giza

Heute habe ich entdeckt, dass es am 08. November 2010 und 14. Dezember 2010 ein Info-Event Geomarketing von Bing Maps und der Deutschen Post gibt. Die Anmeldung ist kostenlos! Eine ganz neue Perspektive auf Karten und Daten? Innovative Konzepte rund um die Standortpotenzialanalyse zur besseren Planung von Vertrieb und Niederlassungen? Marketing-Optimierung und intelligente Kartenanwendungen? Auf jeden Fall - alle die sich mit Bing Maps beschäftigen bzw. beschäftigen möchten und die Chance... [... mehr in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Kostenloser ASP.NET Webcamp im Dezember 2010 in Bad Homburg

06.10.2010 13:56:07 | Kay Giza

Am 16.Dezember 2010 gibt es eine zweite Chance in diesem Eintages-Workshop mit MSDN-Berater Dariusz Parys die Programmierung beeindruckender Web-Anwendungen auf Basis von ASP.NET MVC 2 zu erlernen. In einem ersten Block werden die Grundlagen von ASP.NET MVC erläutert. Dabei lernen Sie den Umgang... [... mehr in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Deutsche Microsoft Partnerkonferenz 2010 – Schön war es!

06.10.2010 13:07:00 | Lars Keller

Ich wurde zusammen mit Frank Solinske auf die deutsche Microsoft Partnerkonferenz 2010 eingeladen. Deutsche Microsoft Partnerkonferenz 2010Für mich war es die erste Partnerkonferenz, die ich miterleben durfte. Auf der Agenda standen verschiedene  Vorträge zu allen möglichen Themen, trotzdem hat man sehr stark gemerkt, dass Microsoft seine Partner auf die Cloud einnordet. Ich glaube, ich habe noch nie so oft Cloud gehört wie an diesen zwei Tagen. ;-)

Ein besonderes Highlight für mich war, dass ich den Geschäftsführer von Microsoft Deutschland Ralph Haupter persönlich kennen lernen durfte. Frank und ich hatten einen der begehrten Interviewslots bekommen und konnten in gemütlicher Runde ein paar Fragen an Ralph Haupter stellen. Natürlich hatte ich auch ein paar „Cloud-Fragen“, z.B. “Warum sollen überhaupt alle in die Cloud?” und “Was tut Microsoft für die Sicherheit meiner Daten?”. Ralph Haupter hat mir ausführlich erklärt, dass die Infrastruktur mittlerweile (jedenfalls in  den meisten Ländern) soweit wäre, dass die Cloud eine hochgradig standardisierte Technologie sei und dass die Industrie die Cloud für Ihr schnelles Wachstum benötigt. Zum Thema Sicherheit hat Ralph Haupter ein interessantes Beispiel gebracht, welches mich zum Nachdenken anregte. Bevor es die Cloud gab, gab es schon verschiedene E-Mailprovider, z.B. Microsoft Hotmail. In dieser Zeit, so Ralph Haupter, besaß das Thema Sicherheit & Datenschutz längst nicht so eine “Brisanz” wie momentan. Des Weiteren halte sich Microsoft an Standards und biete eine hohe Sicherheit durch zertifizierte Rechenzentren etc. Ich muss wirklich zugeben, dass ich mir damals tatsächlich nie die Frage gestellt habe, wie der Provider mit meinen persönlichen Daten umgeht. Sind diese geschützt vor Zugriffen von Dritten. Nichtsdestotrotz bin ich momentan sehr skeptisch, was die Cloud und das Thema Sicherheit angeht!
Lars Keller, Ralph Haupter & Frank SolinskeIch hatte auch ein wenig Zeit mit Ralph Haupter über das Thema Windows Phone 7 (WP7) zu plaudern. Dabei habe ich mir erklären lassen, welches Marktsegment das WP7 einnehmen soll. WP7 ist klar an die Konsumenten gerichtet, obwohl das WP7 die beste Office Integration hat und ein Smartphone ist. Ralph Haupter hatte natürlich ein WP7 Testgerät dabei und hat mir auch sein Lieblingsfeature verraten. Für ihn ist der neue “Hup” das beste Feature. Mit “Hup” ist die neue Oberfläche von WP7 gemeint, man bekommt alle Anrufe, E-Mails, SMS in Abwesenheit sofort angezeigt bekommt. Im Nebensatz fiel, dass die Klicks, um zu bestimmten Informationen zu kommen, sehr gering seien und dies ein großer Unterschied zu den anderen Handyherstellern darstelle. Ich persönlich konnte mir noch kein eigenes Bild dazu machen, aber WP7 kommt ja bald heraus und somit auch endlich ein paar Geräte zum Kaufen und Testen! Ich freue mich jedenfalls schon sehr drauf! Allein, dass ich mehrere Exchangekonten verwalten kann, ist für mich eines der coolsten Features. Frank Solinske

Nach dem Gespräch mit Ralph Haupter gab es noch die letzte Session zum Thema “Verhandeln im Grenzbereich”! Diese Session war auch eine meiner Highlights auf der Konferenz. Der Sprecher Matthias Schranner ist ein ehemaliger Polizeibeamter, der früher Geiselnahmen verhandelt hat. In den 60 Minuten, habe ich einiges zum Thema Verhandeln gelernt, es gibt z.B. Flucht- und Angriffstypen. Wer die Chance hat, Herrn Matthias Schranner einmal live zu erleben, sollte dies unbedingt wahrnehmen! Die Aufzeichnung der Session kann hier ansehen. 

Nach der Session startete bald die Konferenzparty. Die Party stand unter dem Motto “Space Ship”. Überall waren kleine Lars Keller - Deutsche Microsoft Partnerkonfernz 2010Gimmicks und Nerd-Spielzeug. Als Frank und ich auf der Party ankamen, wurden wir sofort von einer Gruppe Storm Troppers aus Starwars begrüßt (leider habe ich davon kein Foto).  Am späten Abend gab es auch eine Laserschwert-Show. Alles schön und gut, aber das Beste war, dass wir Kinect ausprobieren konnten! Ich hatte hohe Erwartungen an die neue controllerlose Steuerung für die Xbox 360. Diese wurden voll erfühlt! Kinect ist einfach genial! Ich habe das Autorennspiel anspielen dürfen, mega fun! Ich durfte mit dem Tiger aus Kinectimals spielen. Das ist echt sehr süß gemacht und meine Performance sorgte um mich herum für einige Lacher! Es ist bemerkenswert mit welche Leidenschaft man sich z.B. auf den Boden fallen lässt, nur um zu sehen, wie es der Tiger einem nach macht und wie tollpatschig sich dieser dabei anstellt! Kinect ist wirklich eine interessante Erfahrung und ich bin mir sicher, dass dies das Spielen revolutionieren wird. Man sitzt beim Spielen nicht mehr nur auf dem Sofa, sondern muss sich ab jetzt auch aktiv bewegen, z.B. wenn man Fußball (Kinect Sports) gegeneinander spielt. Da soll noch einmal einer sagen, Spielen mache dick! ;-) Kinect KinectimalsKinect Autorennen 

Am zweiten Tag von der Partnerkonferenz habe ich mir weitere Sessions angehört. Ich habe u.a. gelernt, wie Kinect im Hintergrund funktioniert (auch sehr beeindruckend), was der neue Lync  Server (ehemals Office Communication Server) bietet und welche neuen Features der gerade erschienene BizTalk 2010 hat. Am Nachmittag hatte ich ein Gespräch mit Steffen Ritter (Marketing Produkt Manager für Visual ALM). Lars Keller & Steffen Ritter Wir haben ein wenig über die Zukunft des TFS Servers gesprochen. Dabei habe ich erfahren, dass es einen TFS in der Cloud gibt. Momentan ist der aber noch Beta. Weiterhin hat mir Steffen erzählt, dass es eine Eclipse Integration (TFS Everywhere) gibt. Steffen gab mir auch den Tipp, dass sich MSDN Kunden, die überlegen etwas für die Cloud zu entwickeln, bis zum 31.10.2010 das aktuelle Angebot von 750 Azures-Stunden pro Monate (insgesamt 16 Monate) sichern können. Nach dem 31.10.2010 wird es ein neues Angebot geben, welches allerdings nicht mehr so üppig ausfallen wird. Hier kann ich aber auch einen Tipp an alle weitergeben, den wir gerade bei diesem Angebot bemerkt haben. Die Azures-Stunden beziehen sich auf eine Azures-Instanz. Beim Entwickeln von Cloud-Anwendungen kann man aber eine Staging- und Produktinstanz benutzen. Hierbei sollte man darauf achten, dass man die nicht benötigte Instanz ausstellt, sonst kann es passieren, dass die 750 Stunden schnell verbraucht sind.
Steffen hat mir über verschiedene Veranstaltungen berichtet, die gerade von Microsoft angeboten werden, u.a. Visual Studio Information Day, Test Information Day, SharePoint Development Information Day, Azures Information Day und Lasttest Roadshow. Darüber werde ich allerdings die Tage noch einmal ausführlicher bloggen, da mir der Steffen noch eine kleine Überraschung dazu versprochen hat. :-)

Die Partnerkonferenz war, im Vergleich zu den reinen Entwicklerkonferenzen, die ich bis jetzt besucht habe, eine etwas andere Konferenz. Mir hat die Konferenz großen Spaß gemacht und ich hoffe, dass es nicht meine letzte Partnerkonferenz bleiben wird! Noch einmal vielen Dank an Annabelle, Katrin und Hannah für die nette Betreuung rund um das Event!

TFS Prozess Dokumentation Anpassen und lokal oder im Intranet bereitstellen

04.10.2010 11:40:33 | Christian Binder

Für die von Microsoft bereitgestellten Prozess Vorlagen für MSF Agile, MSF CMMI und Visual Studio Scrum ist die Prozess Dokumentation online im Team Projekt referenziert, also nur verfügbar, wenn Zugriff zum Internet besteht.

Wer die Dokumentation aber gerne lokal oder im Intranet ablegen möchte, oder den Prozess anpasst und die Dokumentation entsprechend auch anpassen möchte, kann unter folgendem Link die Dokumentation herunterladen und anpassen:

http://code.msdn.microsoft.com/VSScrumGuidance
http://code.msdn.microsoft.com/MSFAgileGuidance
http://code.msdn.microsoft.com/MSFCMMIGuidance

Im Team Explorer befindet sich unter Documents\Process Guidance, des jeweiligen Team Projektes, die Datei Process Guidance.html, welche die Referenz zur Dokumentation enthält.

clip_image002[8]

Für schon bestehende Teamprojekte muss die Referenz entsprechend angepasst werden:

 <meta http-equiv="refresh" content = "0;URL=http://[Neue Location]/html/VisualStudioScrum1.0.html" >

Hinweis: In der Dokumentation befinden sich für verwandte Themen immer noch online Referenzen, da diese Referenzen nicht zur Dokumentation selbst gehören. Wenn gewünscht, können diese aber sehr einfach im HTML entfernt werden.

Um sicherzustellen, dass eine neue Dokumentation automatisch richtig in einem Neu angelegten Team Projekt referenziert wird, muss die Datei Process Guidance.html auch in der Prozess Vorlage angepasst werden. Bei den Vorlagen befindet sich die Datei immer [Pfad zur Vorlage]\Process Template\Windows SharePoint Services\Process Guidance. Nach der Anpassung muss die neue Vorlage dann noch im TFS mit dem Template Manager publiziert werden.

Hier als Beispiel die lokal referenziert Dokumentation in einem meiner Demo Images:

clip_image002[10]

NEW Version 3.7 TeamSpeak Sidebar Gadget für Windows Vista und Windows 7

03.10.2010 19:30:00 | Andreas Mehl

I recommend you update to the latest version 3.7. Because there was a change in direct query mode!!!

 

Screenshots can be found here: Screenshots

New Video can be found here: Video

Documentation can be found here: Documentation

Have fun Laughing

Download Sidebar Gadget Teamspeak 3.7

BlogEngine.NET Update auf Version 1.6.2.11

03.10.2010 16:12:52 | Klaus Bock

logoIn diesem Update von Blogengine.NET wurden die im letzten Beitrag beschriebenen breacking changes in der Benennung der Datenbank-Spalten wieder rückgängig gemacht.
Der Schwerpunkt dieses Updates lag in der Überarbeitung des Admin-Bereichs. Vor allem die Kommentarverwaltung wurde grundlegend überarbeitet. Laut Kommentar des Change Set zu 1.6.2.9 wurde die Funktionalität auf jQuery umgestellt und sollte mittels AJAX das Laden der Daten deutlich effektiver gestalten.
Das Update zu 1.6.2.9 hatte allerdings so seine Tücken. Es wurde eine entscheidende JavaScript-Datei gar nicht geladen. Die jQuery-Dateien wurde mit dem defer-Attribut versehen und noch so ein oder zwei weitere Kleinigkeiten.

Mit der Aktualisierung auf Version 1.6.2.11 wurden die genannten Probleme gefixt und BlogEngine.NET läuft wieder rund.
Vor allem der Bereich zur Kommentarverwaltung wurde massiv umgestaltet. Angenehm fällt hier die Auswahl der Bereiche über einen Navigation im rechten Seitenbereich auf. Auch werden ab jetzt die Track- und Pingbacks nicht mehr in der Gesamtanzahl der Kommentare mitgezählt.

Die gravierendste Veränderung stellt für mich der Wegfall der Option Automatische Moderation dar. Diese Option war sehr angenehm, da die Kommentare anhand der Spam- und IP-Filter automatisch freigegeben wurden. Dazu musste die Option Moderiere Kommentare aktiviert werden, dann konnte auch die Option Automatische Moderation gewählt werden.
Wer sein Blog aktualisiert und die Einstellungen belässt wie bisher, muss nun jeden neuen Kommentar erlauben.
Wer das alte Verhalten wieder nutzen will, muss lediglich die Option Moderiere Kommentare deaktivieren. Klingt erst mal unlogisch, ist aber durchaus plausibel.

Moderiere Kommentare

Die Beschreibung ist hier ein wenig unglücklich gewählt und der Zusammenhang mit den Filtern wird leider nicht erwähnt.
Tatsächlich ist es nun so, dass nach der Deaktivierung der Option Moderiere Kommentare alle Kommentare mit dem Attribut Approved versehen werden und anschließend durch die Filter gehen. Sollte ein Kommentar von einem Filter als Spam markiert werden, erscheint er nicht als Kommentar unter einem Artikel, sondern kann im Bereich Spam der Kommentarverwaltung entweder jetzt freigegeben oder gelöscht werden.
An dieser Stelle sollte vielleicht ein benötigtes Update für die Datenbanktabelle be_PostComment erwähnt werden. Hierzu ist das SQL-Script MSSQLUpgradeFrom1.6To2.0.sql vorgesehen. Damit werden die zwei benötigten Spalten IsSpam und IsDeleted zur Tabelle hinzugefügt.

Fazit:

Nach den letzten unglücklichen Change Sets ist mit der Version 1.6.2.11 wieder einmal ein Zwischenstand veröffentlicht worden, der auch unbedarften Benutzern empfohlen werden kann.
Dieses Update kann beinahe bedenkenlos genutzt werden. Wer schon gerne jetzt einen Eindruck von künftigen Versionen erhalten will, sollte sich nicht scheuen zu aktualisieren.
An dieser Stelle noch einmal der Hinweis auf den geänderten Namensraum für Erweiterungen aus dem vorherigen Artikel. Wichtig für Entwickler die eigene Erweiterungen verwenden. Diese Änderung bleibt auch in Zukunft bestehen und sollte schon jetzt beachtet werden.

Technorati-Tags: |

BITKOM-Leitfaden: Industrielle Softwareentwicklung mit Visual Studio 2010: Best of Suite-Entwicklungsumgebung [PDF]

03.10.2010 13:18:47 | Kay Giza

Leitfaden Industrielle Softwareentwicklung. Die Bedeutung von Software als Basistechnologie für Innovation und Wertschöpfung im 21. Jahrhundert nimmt stetig zu. Innovative Produkte und Dienstleistungen mit Wertschöpfung in Hochlohnländern sind ohne Software kaum mehr möglich. Während zu Beginn des IT-Zeitalters die Entwicklung von IT-Systemen noch als ausschließlich kreativer Akt den Fokus auf der grundsätzlichen Machbarkeit hatte, gewinnt aktuell ein industrialisiertes Vorgehen (Software Engineering) immer mehr an Bedeutung, um die IT in das Spannungsfeld von Effektivität und Effizienz zu integrieren. Die damit erwartete Garantie von Qualität und Produktivität ist die Voraussetzung für Wertschöpfung und für Arbeitsplätze in der IT-Industrie in Hochlohnländern wie Deutschland. In diesem Leitfaden wird dargelegt, wie eine derartige Industrialisierung der IT konkret aussehen kann, welche unterschiedlichen Aspekte bereits erfolgreich umgesetzt werden und welche kurzfristigen Ergebnisse noch zu erwarten sind... [... mehr in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Windows Live Essentials 2011 ist final fertig: Gratis-Download des Programmpaket von Microsoft

03.10.2010 12:54:16 | Kay Giza

Die neue Generation der Windows Live Essentials steht ab sofort final zum kostenlosen Download zur Verfügung. Mit diesem kostenlosen Softwarepaket bietet Microsoft eine komplett überarbeitete Versionen der Anwendungen Windows Live Messenger, Windows Live Mail, Windows Live Writer, Windows Live Mesh, Windows Live Family Safety, Windows Live Fotogalerie und Windows Live Movie Maker an. Neben vielen neuen Funktionen ermöglichen die Windows Live Essentials 2011 nun eine noch stärkere Integration von Online-Netzwerken, Social Media Plattformen und verschiedenen E-Mail-Konten. Auch seinen Synchronisationsdienst Mesh hat Microsoft weiterentwickelt und erlaubt nun den direkten Remote-Zugriff auf entfernte Endgeräte wie zum Beispiel vom Smartphone auf den PC. Über 500 Millionen Windows Live User dürfen sich nun auf die schnellste und direkteste Verbindung zwischen dem eigenen PC und der Online-Welt freuen... [... mehr in diesem Blogeintrag auf Giza-Blog.de]

This post is powered by www.Giza-Blog.de | Giza-Blog.de: RSS Feed
Visit:  MSDN Online | Follow MSDN Online on Twitter | Follow Kay Giza on Twitter
Daily News on MSDN:  MSDN Aktuell
© Copyright 2006-2010 Kay Giza. All rights reserved. Legal
Subscribe

Meine Windows Phone 7 Demo

01.10.2010 13:37:21 | Oliver Scheer

Auf diversen Veranstaltungen erkläre ich derzeit Designern und Entwicklern, die Entwicklung von Windows Phone 7 Anwendungen. Dabei demonstriere ich technische Funktionen des Telefons mit Hilfe einer ständig wachsenden App.

image

Der Sourcecode dazu kann hier heruntergeladen werden:

Wünsche bzgl. neuer Demos bitte einfach an mich senden.

Schritt für Schritt zur eigenen App: Windows Phone 7 Coding Camps!

01.10.2010 13:32:13 | Peter Kirchner

Als einer der ersten Apps für Windows Phone 7 schreiben – Microsoft zeigt Studenten und Start-Ups, wie es geht!

Bei den Windows Phone 7 Coding Camps zeigen Experten zwei Tage lang alles rund um das neue Phone und machen die Teilnehmer in Einführungsvorträgen fit zu den Technologien Windows Phone 7, Silverlight und XNA.

Das Ziel der Veranstaltungen ist es, am Ende eine eigene App für Windows Phone 7 in den Marketplace zu laden!

Die Veranstaltung richtet sich an Studierende aller Fachrichtungen, die Lust haben, eigene Apps für Windows Phone 7 zu schreiben, sowie an Start-Ups.

Die Teilnahme am Event ist kostenlos. Zusätzlich besteht für die Teilnehmer, die einen längeren Anreiseweg haben, auch eine Übernachtungsmöglichkeit.

Termine

  • 09.– 10.10 Unterschleißheim/München (Sa/So)
  • 14.– 15.10 Berlin (Do/Fr)
  • 23.– 24.10 Hamburg (Sa/So)
  • 30.– 31.10 Köln (Sa/So)

Weitere Informationen und Details zur Agenda finden Sie hier und hier geht’s direkt zur Anmeldung.

TechTalk im Oktober: Windows Phone 7 – Noch wenige Plätze frei

01.10.2010 12:51:41 | Peter Kirchner

Das portable Tor zur Welt: MSDN-Berater Tom Wendel informiert auf dieser Ausgabe der kostenlosen TechTalk-Reihe über Windows Phone 7 und die vielfältigen Möglichkeiten, die sich auf Basis der neuen Anwendungsplattform aus .NET, Silverlight und XNA für Entwickler bieten.

Für die fünf Termine in Berlin (11.10.), Hamburg (12.10.), Köln (18.10.), Karlsruhe (19.10.) und München (25.10.) stehen jeweils noch wenige Restplätze zur Verfügung. Für alle, die den TechTalk im Juni verpasst haben, ist dies eine gute Gelegenheit, Windows Phone einmal in Live-Demos ganz aus der Nähe zu erleben und dabei vor allem die aktuellste Version der Developer Tools kennenzulernen. Schnelle Anmeldung ist daher empfehlenswert.

http://www.microsoft.com/germany/msdn/techtalk/WindowsPhone7_DasPortabelTorZurWelt.mspx

Regeln | Impressum