<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>.NET Stories: Digitale Erfahrungen &#187; WCF</title>
	<atom:link href="http://www.gmbsg.com/tag/wcf/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gmbsg.com</link>
	<description>So einfach wie möglich. Aber nicht einfacher.</description>
	<lastBuildDate>Tue, 31 Aug 2010 22:21:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Technical Summit 08: Teil 2</title>
		<link>http://www.gmbsg.com/technical-summit-08-teil-2/</link>
		<comments>http://www.gmbsg.com/technical-summit-08-teil-2/#comments</comments>
		<pubDate>Fri, 21 Nov 2008 22:43:44 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[ADO.NET]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Automation]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[LINQ]]></category>
		<category><![CDATA[M]]></category>
		<category><![CDATA[MDD]]></category>
		<category><![CDATA[MSBuild]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[Oslo]]></category>
		<category><![CDATA[Projektmanagement]]></category>
		<category><![CDATA[Prozess]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Team]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[Unit Test]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[WF]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=229</guid>
		<description><![CDATA[Yep, die Summit habe ich nun hinter mir. Mein Log:
Session 1: Dariusz zu Besuch in Oslo
Abstrakte Kost zum Wachwerden für müde Entwickler-Hirne präsentierte Dariusz mit der ersten Session des zweiten TS-Tages: Oslo &#8211; Modellgetriebene Entwicklung. Was ist denn Oslo?
Zunächst einmal ...]]></description>
			<content:encoded><![CDATA[<p>Yep, die Summit habe ich nun hinter mir. Mein Log:</p>
<h3>Session 1: Dariusz zu Besuch in Oslo</h3>
<p>Abstrakte Kost zum Wachwerden für müde Entwickler-Hirne präsentierte Dariusz mit der ersten Session des zweiten TS-Tages: Oslo &#8211; Modellgetriebene Entwicklung. Was ist denn Oslo?</p>
<p>Zunächst einmal wäre da die grundsätzliche Definition einer Entwicklungs-Umgebung und entsprechenden Tools, die eine modellgetriebene Software-Entwicklung ermöglichen sollen. Microsoft verfolgt hier den Ansatz des &#8220;neu erfindens&#8221;. Mit Oslo wird eine komplett neue Landschaft angeboten, statt bestehende Systeme zu erweitern.</p>
<p>Zum einen wäre da die &#8220;textuelle Modellierungssprache&#8221; M &#8211; M wie Modell. M ist natürlich keine klassische Programmiersprache, sondern dient der Beschreibung von DSL&#8217;s. Im Fokus ist nicht die Objektorientierung, sondern Daten- und Strukturorientierung. M hat eine Reihe von eigenen DSL&#8217;s (also Untertypen zu M), darunter MGrammar, um Grammatiken und Syntax für die eigene Textsprache zu definieren, MEntity um verhaltens- und modellbezogene Objekte zu modellieren, sowie MSchema, eine Sprache zur Definition von (relationalen) Datenstrukturen. Dariusz zeigte ein paar Beispiele mit dem neuen &#8220;Intellipad&#8221; (dem M-Editor), der schon seit einiger Zeit im Netz als das &#8220;Emacs.NET&#8221;-Gerücht verbreitet wurde.</p>
<p>Modellierung geht natürlich auch &#8211; oder besser primär &#8211; visuell. Dafür hat Microsoft einiges an Entwicklungsarbeit investiert und die neue Anwendung &#8220;Quadrant&#8221;. Quadrant ist so etwas ähnliches wie ein flexibler Diagramm-Designer. Die Flexibilität erreicht es zum einen über M selbst sowie auch über eigene &#8220;Meta-DSL&#8217;s&#8221;. Quadrant hat im wesentlichen eine Office-Style-Ribbon-Bar und eine &#8220;Workspace&#8221; genannte Zeichenfläche. Je nach definierten Modell oder DSL kann man verschiedene Entitäten und Objekte erstellen, auch neue Menü&#8217;s und der Kontext ist änderbar. Auf den ersten Blick sieht das Tool ganz nett aus &#8211; die Power, die in Quadrant stecken soll, konnte mir Dariusz in den 5 Minuten leider nicht ganz vermitteln.</p>
<p>Ein wesentlicher Teil von Oslo ist &#8220;Dublin&#8221;. Dublin soll eine Hosting Runtime für Oslo MDA&#8217;s werden. Realisiert als Erweiterung für den IIS ist es ein Quasi-Application-Server. Intern werkeln WCF &#038; WF kräftig auf dem Metadaten-Modell und sollen die mit den Oslo-Tools entworfenen Anwendungen ohne weiteres Zutun ausgeführt und zur Verfügung gestellt werden können. Dublin selbst ist noch in der Entwicklung &#8211; mal abwarten, wie es am Ende aussehen wird.</p>
<p>Am Rande erwähnt wurde auch, das die gezeigten Oslo-Komponenten (also M und Quadrant) wohl auch irgendwie mit Visual Studio gekoppelt werden &#8211; natürlich noch nicht zum VS10er-Release, aber eine Integration sei in Planung.</p>
<p>Fazit: Oslo ist in einer noch sehr frühen Phase, deutet aber schon an, wie MDD in Zukunft aussehen kann. Danke Dariusz. </p>
<h3>Session 2: Christian mit Rosario</h3>
<p>&#8220;Rosario&#8221; ist der Codename der neuen Version von Visual Studio Team System / TFS. Wer schon heute mit VSTS mit TFS verwendet, der weiß, das da noch einiges an Platz für Verbesserung vorhanden ist. Das scheint auch Microsoft erkannt zu haben, wenn man den Worten von Christian glauben darf. Bei den Worten wollte er es natürlich nicht belassen und zeigte ein paar Slides und Demos zu den Verbesserungen.</p>
<p>Zunächst einmal werden Kernelelemente wie Skalierungsfähigkeit, Maintenance und das Build- bzw. SCCS-Management verbessert. Wie hinlänglich bekannt, ist Installation und Administration von TFS / VSTS ja keine besondere Meisterleistung von Microsoft. Mit Rosario soll laut Chrisitan TFS innerhalb einer halben Stunde installiert und konfiguriert werden können &#8211; da lehnt er sich meiner Meinung nach ziemlich weit aus dem Fenster &#8211; aber ich will nicht von vornherein darüber urteilen.</p>
<p>Für den Continuous Build wird Build Agent Pooling und das &#8220;Gated Check-In&#8221; integriert. Das &#8220;Gated Check-In&#8221; erlaubt einen serverseitigen Buildrun mit den Änderungen, die eingecheckt werden sollen. Das neue &#8220;Branch Management&#8221; ist eigentlich nichts anderes als ein Backtracking und eine Visualisierung der Branches auf dem SCCS. Diese Features sind bei der Konkurrenz (siehe z.B. TeamCity) z.T. schon lange Standard &#8211; wenigstens schließt hier Microsoft ein wenig auf. </p>
<p>Im Project Management Bereich soll das Reporting und Templating besser ausgebaut werden. Interessant ist die Integration der Kernelemente von Scrum, wie z.B. das Dashboard und Excel Listen für Product Backlog, Sprint Backlog, Sprint Planung, Burndown Charts oder die User Story Work Items. Die Beziehungen der Work Items zueinander wird in Rosarion weiter verbessert. Man kann eine komplette Hierarchie aufbauen, aber auch andere &#8220;Link Relations&#8221; setzen, wie z.B. Predecessor (Vorgänger) oder Dependency (Abhängigkeit). Auch die Organisation der einzelnen Projekte wird überarbeitet. Über die schon existierenden Team Projects sollen nun organisatorisch mit &#8220;Team Project Collections&#8221; ganze Anwendungsfamilien verwaltet werden können. </p>
<p>Für das Qualitätsmanagement sollen die Tools für das Unit Testing weiter verbessert werden. Interessant ist, das ein komplett neues &#8220;Test Quality Center&#8221; aufgebaut wird (Codename: Camano). Neue Features wie Test Impact Analyse, Test Suites und ein neuer &#8220;Test Plan Manager&#8221; sollen den Testalltag vereinfachen. Auch die Test Cases sind als Work Items gespeichert und können mit Changesets, Tasks und Requirements verbunden werden. Gut gelungen finde ich die Verwaltung der Test Cases mit Test Runs und Test Settings. Ziel dieser feinen Testorganisation soll die Eliminierung der &#8220;No Repro Bugs&#8221; sein.</p>
<p>Dieses Ziel wird vor Allem durch den neuen &#8220;Manual Test Runner&#8221; unterstützt, mit dem manuelle oder explorative Tests durchgeführt werden können. Besonders prickelnd: Die Tests können mit einem Test Recorder aufgenommen und automatisiert werden. Weitere Test Tracking Features sind die Videoaufnahme, Log Sampling und Umgebungsanalyse. Übrigens, der Test Recorder soll eine Reihe von UI-Typen unterstützen können, wie z.B. Windows Forms, WPF, die IE Engine und sogar die Firefox Gecko Engine. Ein Highlight beim Qualitätsmanangement ist das &#8220;Environment Provisioning&#8221;, mit dem eine virtuelle Testumgebung angeboten werden kann. Wie das eben so ist mit virtuellen Maschinen, sind Checkpoints und Flashbacks auf ältere Stände möglich.</p>
<p>Abschließend ging Christian noch auf die neuen Diagramme und Analyse-Möglichkeiten von VSTS 2010 ein. Standard UML die Use Case, Activitiy, Sequence und das bekannte Class Diagram sind nun in VS direkt umsetzbar. Es wird zusätzlich noch das &#8220;Laer Diagram&#8221; und ein &#8220;Architecture Explorer&#8221; angeboten. Das Layer Diagram soll eine Tiered Architecture widerspiegeln. Durh Verknüpfung der einzelnen Elemente mit Namespaces ist sogar eine automatische Validierung zur Einhaltung der Layer-Regeln möglich. Der Architecture Explorer ist die visualisierte Fortführung des Object Explorers. Ausgehend von einem &#8220;Bird-Eye View&#8221; kann man in die einzelnen Namespaces, Klassen und Methoden navigieren und sich besondere Konstallationen näher ansehen. Ein NDepend-Ersatz ist es bei weitem nicht, aber ermöglicht  zumindest eine nette und schnelle Analyse.</p>
<p>Fazit: Die neuen Quality-, Test- und Diagramm-Features sind wirklich beeindruckend. Die Verbesserung von TFS ist längst überfällig. Vielversprechend!</p>
<h3>Session 3: Nochmal Dariusz mit WCF &#038; WF in .NET 4.0</h3>
<p>Da bin ich nun wieder in einer Session mit Dariusz gelandet. Diesmal: WF &#038; WCF in .NET 4.0. Wie immer zu Beginn ein Abriß der Themen. Generell wurde bei der Weiterentwicklung von WF und WCF an der Performance geschraubt. die Workflow Foundation Engine soll eine mindestens 10-fache Geschwindigkeitssteigerung erfahren haben. Doch nicht nur unter der Haube der WF wurde gewerkelt. Die API wurde verbessert, um noch einfacher mächtigere Activities entwickeln zu können. So werden mit 4.0 auch &#8220;Variablen&#8221; (besser: State Parameter) im Workflow unterstützt, die man relativ elegant mit den Klassen <code>InParameter&lt;T&gt;</code> und  <code>OutParameter&lt;T&gt;</code> ansprechen kann.</p>
<p>Besonders hob Dariusz den komplett neu aufgebauten Designer von WF hervor. Er wird nun komplett in WPF umgesetzt, bietet dementsprechend eine ansprechende UI und ist vor Allem besonders gut anpassbar. Auch die Verwendung des Designers in eigenen Programmen (das sog. Rehosting) wird deutlich verbessert und vereinfacht.</p>
<p>Auf der WCF-Seite werden die QoS-Merkmale Konfiguration, Monitoring und Deployment weiter verbessert. Das eigentlich Neue ist aber die engere Verzahnung mit der Workflow Foundation. Zwar ist es schon jetzt möglich, eine WF-Anwendung per WCF in wenigen Schritten zur Verfügung zu stellen &#8211; doch ein weiterer Ausbau sei geplant. Diese &#8220;Vereinigung&#8221; hat auch einen höheren Sinn, nämlich die Entwicklung von Dublin (siehe auch Session 1: Oslo).</p>
<p>Fazit: Kurz &#038; Knackig. Das Zusammenspiel von WCF &#038; WF war hervorzusehen, die Neuigkeiten über WF hören sich gut an. </p>
<h3>Session 4: Oliver Scheer über die Zukunft von ASP.NET</h3>
<p>Die Zukunft von ASP.NET &#8211; das interessiert mich. Also auf zur letzten Session der Technical Summit mit Oliver Scheer. Nach 5 Minuten dachte ich mir: Ups &#8211; schon wieder eine Themaverfehlung? Denn Oliver gab ein Überblick über das, was er in einer Stunde zeigen möchte: ADO.NET Data Services, Dynamic Data Sites, ASP.NET MVC, ASP.NET AJAX und AJAX Control Toolkit. Toll &#8211; Wo ist JQuery, wo sind die neuen HttpHandler und -Modules, wo sind die MVC-Controls? Anscheinend nicht auf der Technical Summit. Naja &#8211; vielleicht zeigt Oliver ein paar Minuten noch neue Features für ASP.NET MVC.</p>
<p>Zunächst zeigte Oliver eine Demo von ADO.NET Data Services. Schön einfach über das Entity Framework die Tabellen zusammenklicken, den Data Service erstellen und die Configzeilen reinschreiben. Fertig. Nix Neues. Punkt.</p>
<p>So &#8211; jetzt mal endlich etwas neues für ASP.NET &#8211; ASP.NET MVC. Oliver beschreibt die Grundlagen und zeigt die bekannten Getting-Started-Samples. Er geht flüchtig auf die Konventionen ein und beschreibt sehr oberflächlich die Idee des MVC. So, noch kurz das Routing gezeigt und ein wenig erklärt. Ok. Nix Neues. Punkt.</p>
<p>Oh &#8211; Oliver holt aus zum nächsten Thema &#8211; ASP.NET Dynamic Data Websites. Ich wundere mich jedes Mal, wenn ich das sehe, wer zum Teufel im Alltag den Anwendungsfall für so eine Art Website hat. Es scheint wohl einige zu geben, sonst hätte man nicht so eine Art von Website-Projekt wohl nicht realisiert. Egal &#8211; ich jedenfalls kenne niemanden der sowas brauchen kann. Nix Neues. Punkt.</p>
<p>Zu guter Letzt noch ein Ausflug in ASP.NET AJAX und ein Verweis auf das AJAX Control Toolkit. Oliver zeigt wieder mal die gewohnte Extender-Demo. Ok. Nix Neues. Halt! Zu guter Letzt doch noch JQuery! Zu schade &#8211; nur ein Hinweis auf die Integration und die Auslieferung mit ASP.NET 4.0. Als Entschädigung dafür zeigt Oliver in seiner letzten Demo, das die neuen, von Microsoft geschriebenen JS-Klassen einen Aufruf von WCF Diensten ohne jegliches serverseitiges Zutun durchführen können. Ok. Wenigstens ein wenig Neu. Punkt.</p>
<p>Fazit: Nahezu Nix Neues. Punkt.</p>
<p>Eine Anmerkung noch: ich finde es wirklich sehr Schade, das gerade die zwei Sessions über ASP.NET für mein Dafürhalten so schwach ausgefallen sind. Man kann ASP.NET mögen oder nicht &#8211; aber auf einer Konferenz wie der Technical Summit ASP.NET derart zu vernachlässigen ist spricht nicht gerade für technologische Überzeugung.</p>
<h3>That&#8217;s it</h3>
<p>So, das war also die Technical Summit 08, so wie ich sie erlebt und verstanden habe. Ich denke jetzt muss ich erstmal die Infos und die ganze Veranstaltung noch auf mich wirken lassen und verarbeiten. Im Großen und Ganzen war es eine gute und z.T. sehr aufschlußreiche Konferenz. Das absolute Highlight war für mich die Parallels-Session mit Steve, dicht gefolgt von den beeindruckenden VSTS-Demos von Christian und der hochinteressanten Microsoft-MDD-Interpretation Oslo mit Dariusz.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/technical-summit-08-teil-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Schön juudn Bonjorno wünsch Ick&#8230;</title>
		<link>http://www.gmbsg.com/schon-juudn-bonjorno-wunsch-ick/</link>
		<comments>http://www.gmbsg.com/schon-juudn-bonjorno-wunsch-ick/#comments</comments>
		<pubDate>Fri, 21 Nov 2008 09:19:56 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[MDD]]></category>
		<category><![CDATA[Oslo]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[WF]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=225</guid>
		<description><![CDATA[&#8230;der zweite Tag auf der Technical Summit 08 im ICC Berlin hat begonnen. Anbei gleich mal mein Session-Plan:

Oslo &#8211; Model Driven Development, Dariusz Parys
Visual Studio 2010 (Codename Rosario), Christian Binder
WCF &#038; WF in .NET 4.0, Dariusz Parys
ASP.NET Futures, Oliver Scheer

Die ...]]></description>
			<content:encoded><![CDATA[<p>&#8230;der zweite Tag auf der Technical Summit 08 im ICC Berlin hat begonnen. Anbei gleich mal mein Session-Plan:</p>
<ul>
<li>Oslo &#8211; Model Driven Development, <i>Dariusz Parys</i></li>
<li>Visual Studio 2010 (Codename Rosario), <i>Christian Binder</i></li>
<li>WCF &#038; WF in .NET 4.0, <i>Dariusz Parys</i></li>
<li>ASP.NET Futures, <i>Oliver Scheer</i></li>
</ul>
<p>Die erste Session über Oslo habe ich schon hinter mir. Ein Log dazu gibt&#8217;s nach der Summit, es sei nur kurz erwähnt: interessante Abstraktionen! Mal sehen, wie die restlichen Sessions werden.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/schon-juudn-bonjorno-wunsch-ick/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Technical Summit 08: Teil 1</title>
		<link>http://www.gmbsg.com/technical-summit-08-teil-1/</link>
		<comments>http://www.gmbsg.com/technical-summit-08-teil-1/#comments</comments>
		<pubDate>Thu, 20 Nov 2008 21:02:04 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[3.0]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[ADO.NET]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Claims]]></category>
		<category><![CDATA[Datenbank]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[MDD]]></category>
		<category><![CDATA[Multithreading]]></category>
		<category><![CDATA[Oslo]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[Software-Entwicklung]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[WF]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=220</guid>
		<description><![CDATA[Yep, der erste Tag ist geschafft. Anbei mein Log der Sessions:
Session 1: Steve Teixeira über Multi-Core Software-Entwicklung
Steve Teixeira ist Program Manager beim Parallel Developler Tools / Visual Studio Team in Redmond und hatte in seiner Session neben der grundlegenden Einführung ...]]></description>
			<content:encoded><![CDATA[<p>Yep, der erste Tag ist geschafft. Anbei mein Log der Sessions:</p>
<h3>Session 1: Steve Teixeira über Multi-Core Software-Entwicklung</h3>
<p><a href="http://blogs.msdn.com/texblog/">Steve Teixeira</a> ist Program Manager beim Parallel Developler Tools / Visual Studio Team in Redmond und hatte in seiner Session neben der grundlegenden Einführung der neuen API für Multithreading auch einige Neuigkeiten über die nächste Visual Studio Version zu berichten. Doch alles der Reihe nach. Zunächst einmal schilderte Steve, wieso man sich eigentlich Gedanken über Parallele Ausführung von Code machen sollte. Der Grund ist natürlich bei der Hardware-Entwicklung vergraben, denn mittlerweile gelangt man an die Leistungsgrenzen im CPU-Design mit einem Kern. Der Hauptgrund ist die inzwischen fast unkontrollierbare Wärmeleistung, die die Chips von sich geben. Der Trend ist zu Multi-Core-CPU&#8217;s ist eindeutig auch im Alltag angekommen.</p>
<p>Das wiederum macht es erforderlich, die Software auf die neuen Gegebenheiten anzupassen. Steve zeigte ein schönes Beispiel mit Hilfe von <a href="http://en.wikipedia.org/wiki/Linq>LINQ</a> und <a href="http://en.wikipedia.org/wiki/Parallel_FX_Library">PLINQ</a> um die Unterschiede zwischen sequentiellem und parallelisiertem Code deutlich zu machen. Was heißt das für den &#8220;Alltags-Entwickler&#8221;, wie ich es z.B. bin? Nun, zunächst einmal bedeutet es eine Schärfung der Coder-Sinne auf das Thema Performance. Ich fühle mich zwar in diesem Thema schon heute gut aufgehoben, aber es dürfen ruhig noch ein wenig mehr Details sein. </p>
<p>Unterstützt wird dies im Besonderen durch das neue <a href="http://msdn.microsoft.com/en-us/vs2008/products/cc948977.aspx">Visual Studio 2010</a>. Es kommt mit neuen Tools wie Performance und Concurrency Profilern, die deutlich, graphisch anschaulich zeigen, wieviel Zeit die Software für bestimmte Aktionen verbraucht und mit welchen Ressourcen diese Leistung erreicht wurde. Auffällig dabei sind auch die Optionen, die das neue Performance-Tool bietet: CPU-basiertes Sampling, komplette Instrumentation, also Analyse aller Zeiten und Zyklen von Methodenaufrufen und das schon eben erwähnte Concurrency Profiling, mit dem man in der Lage ist zu erkennen, wie die Threads mit den Aufgaben ausgelastet sind. </p>
<p>Eine &#8220;Performance Debugging Suite&#8221; also, die im neuen Visual Studio verankert sein wird. Voraussetzung ist jedoch die Installation auf Windows Vista oder Windows 2008, da die Monitoring-Tools intern eng mit der seit Vista erweiterten Windows Eventing API (ETW) zusammenarbeiten.</p>
<p>Für so passionierte .NET-Entwickler wie mich ist die Verwendung der neuen API einfacher als erwartet. So lassen sich z.B. LINQ-Abfragen elegant mit dem &#8220;Anhängsel&#8221; <code>.AsParallel()</code> parallelisieren. Mindestens genauso einfach lassen sich auch Codebestandteile für die Parallel-Ausführung trimmen. Eine einfache for-Schleife ist mit <code>Parallel.For()</code> im Nu für die Parallelisierung umgesetzt. Die Nebeneinanderausführung von separaten Codeteilen mit <code>Parallel.Invoke()</code> ist zügig definiert und intuitiv. All diese Dinge sind fest im neuen .NET Framework 4.0 verankert. Interessant in diesem Zusammenhang ist, das Steve explizit auf deutliche Verbesserungen &#8220;unter der Haube&#8221; hingewiesen hat. So ist z.B. die <code>ThreadPool</code>-Klasse intern mit neuen Strategien wie dem Work Stealing ausgestattet worden, um die Verteilung der Aufgaben in Multi-Core Umgebungen zu optimieren.</p>
<p>Ein helles Ohr hatte ich auch bei den vielen kleinen Anekdoten und Anmerkungen von Steve. So ging er flüchtig auf die Entwicklung von Visual Studio ein und verriet, das der Visual Studio Code mehrheitlich in C++ und C# geschrieben ist und derzeit mehr als 45 Millionen Codezeilen umfasst. Interessant ist auch die Tatsache, dass das Visual Studio Team bei der Entwicklung von neuen Komponenten und UI verstärkt WPF im Einsatz hat. Steve begründet das mit der schlichten Tatsache, das WPF schnell genug ist und eine wesentlich effizientere UI-Entwicklung ermögliche als mit der klassischen GDI.</p>
<p>Fazit: Ein absolutes Highlight &#8211; Visual Studio 2010 in Aktion und Insider-Wissen. VS10, Parallels &#038; .NET 4.0, ich warte auf euch&#8230;</p>
<h3>Session 2: Holger Schwichtenberg und AJAX Services</h3>
<p>AJAX ist nicht nur in aller Munde sondern heutzutage schon fast auf jeder Website in irgendeiner Form im Einsatz. Das man AJAX auch in ASP.NET einsetzen kann, ist spätestens nach dem .NET Framework 3.5 keine besondere Neuigkeit mehr. So auch der Inhalt der Session von Holger. Er machte einen knapp einstündigen Rundflug über die Möglichkeiten des AJAX-Einsatzes in ASP.NET, darunter das berüchtigte UpdatePanel (aka. AJAX für Arme), das AJAX Control Toolkit (aka. Atlas) und die kleinen Tools, die mit den ADO.NET Data Services einhergehen.</p>
<p>Auf AJAX-Spezifische News für .NET 4.0, den JQuery-Support mit ASP.NET 4.0 oder Visual Studio 2010 ging Holger garnicht oder nur am Rande mit einem Keyword aus einem Slide ein. Schade, aber aus meiner Sicht eine sehr schwache und fachlich &#8220;äußerst überschaubare&#8221; Session. Besonders die Argumentationen von Holger für so manche Technologie sind in meinen Augen etwas zu oberflächlich. So geschehen bei einer Frage eines Zuhörers:</p>
<blockquote><p><i>Zuhörer</i>: Bei den ADO.NET Data Services verzichten Sie auf eine gewohnte 3 bzw. N-Tier Architektur. Dies wurde lange als &#8220;Best Practice&#8221; vermittelt und nun wird das mißachtet. Was meinen Sie?</p></blockquote>
<blockquote><p><i>Schwichtenberg</i>: Nun, ich sage Ihnen ja nicht, das eine N-Tier Architektur nicht empfehlenswert ist. Aber &#8211; mit ADO.NET Data Services ist der Betrachtungswinkel ein anderer. Während &#8220;klassische&#8221; Web Services nur die Daten und Funktionen herausgeben, die wirklich benötigt werden &#8211; also praktisch die Daten schon serverseitig Filtern &#8211; wird bei den ADO.NET Data Services zunächst der gesamte Datenbestand im Web Service angeboten. Der Client kann nun über die REST-Query entscheiden, was er konkret benötigt. Aus meiner Sicht ist diese Herangehensweise ein Produktivitätsgewinn.</p></blockquote>
<p>Na, das ist ja eine feine Aussage! Sichereitsbedenken scheint Holger nicht zu haben, wenn er alle Daten frei verfügbar macht. Des Weiteren ist die Konstellation AJAX + ADO.NET Data Services + Entity Framework sehr wohl eine &#8220;Tiered Architecture&#8221;, Das Entity Framework löst den klassischen Data Layer ab. Die Data Servies können als &#8220;Business Layer&#8221; durchgehen (man kann ja selbst noch einiges dazu entwickeln und der Zweck eines &#8220;Data Providers&#8221; kann in meinen Augen auch als &#8220;Business&#8221; definiert werden). Zu guter letzt ist AJAX bzw. die Website die UI bzw. das Frontend. Naja, vielleicht habe ich es auch nicht richtig kapiert, was Holger damit gemeint hat.</p>
<p>Fazit: Eine der schwächeren Sessions, die fachliche Tiefe und vor Allem Neuigkeiten bzw. Best Practices vermissen ließ.  </p>
<h3>Session 3: Dariusz quatscht hessisch, und zwar &#8220;Windoos Äschär&#8221;</h3>
<p>Der Name ist Programm: Dariusz wagt sich in die neue blaue Windows-Welt: &#8220;<a href="http://www.microsoft.com/azure/services.mspx">Windoos Äschär</a>&#8221; &#8211; so meint er könnte man es zumindest versuchen, die neue Service-Familie auszusprechen. In wohl bekannter Manier stieg er fröhlich in die Thematik mit einem Überblick ein.</p>
<p>Da wären zunächst die .NET Services &#8220;Access Control&#8221;, &#8220;Service Bus&#8221; und &#8220;Workflow&#8221;. Der Access Control Dienst so etwas vergleichbares wie ein etwas besserer, Claims-basierter Single-Sign-On Service mit Authorisierungsmanagement. Über eine Claims-Challenge können sich Nutzer und Dienste gleichermaßen authentifizieren. Dabei kann man aus der gewohnten Variabilität der Authentifizierungsart wählen &#8211; ob nun UserNamePassword, Zertifikate, Windows Live ID &#8211; Claims bleibt Claims. Der Service Bus ist der aus größeren Unternehmen bekannte ESB portiert auf die &#8220;Cloud&#8221;. Mittelfristig soll mit dem Service Bus eine &#8220;orchestrierte&#8221; Gemeinde von Diensten zur Verfügung gestellt werden. Das Pattern ist jedenfalls nicht neu. Der dritte im Bunde ist der Workflow Dienst. Basierend auf der WF kann er als &#8220;Schaltzentrale&#8221; verwendet werden. Momentan ist dieser Baustein noch sehr rudimentär, soll aber weiter ausgebaut werden.</p>
<p>Eine weitere Service-Gruppe ist die &#8220;SDS&#8221; &#8211; die SQL Data Services. Gleich zu Beginn klärt Dariusz hier den Unterschied zwischen &#8220;Azure Storage&#8221; und den &#8220;echten&#8221; SQL Diensten. Während die Storage eher eine &#8220;einfache, sqlfähige Datenablage&#8221; ist, sollen die SDS mittel- bis langfristig wesentlich mehr Features anbieten wie z.B. Reporting, Data Mining oder ETL Dienste. Gewöhnungsbedürftig bei den SDS ist die Organisation der Daten: Man hat nicht mehr die klassischen, relationalen SCHEMA TABLE ROW Strukturen. Statt dessen befinden sich die Daten in sog. &#8220;Containern&#8221; (vergleichbar mit Datenbanken oder Schemata). Die Daten wiederum sind als &#8220;Entities&#8221; strukturiert. Eine Entity hat mindestens einen Typ (also den Entity-Namen), eine EntityID und den EntityKind, welche Aussage über die Art oder Klasse der Datenstruktur geben soll. Weitere Felder sind frei definierbar. Die Feldtypen beschränken sich derzeit nur auf einfache Datentypen.</p>
<p>Auf weitere Dienst-Gruppen ist Dariusz nicht eingegangen &#8211; wie sollte er auch &#8211; er hatte während der Session mit anderen Problemen zu kämpfen. Jede zweite Demo ging nicht oder brach mit irgendwelchen Exceptions ab. Tja, er musste selbst zugeben, das &#8220;Äschär&#8221; noch nicht ganz fertig ist und an der einen oder anderen Stelle die notwendige Reife für den produktiven Einsatz vermissen ließ.</p>
<p>Der erste Eindruck den Windows Azure und die &#8220;SOA-Diensten&#8221; hinterlassen ist das Interesse an Neuem mit einer großen Portion Skepsis. Auch wenn irgendwann einmal Azure stabil und schnell wird bleibt abzuwarten, ob die Plattform attraktiv und intuitiv genug ist, um echte Anwendungen darauf laufen zu lassen.</p>
<p>Fazit: Mal sehen was daraus wird!</p>
<h3>Session 4: Dirk Primbs schreibt effizienten Code in C# 3.0</h3>
<p>Dirk ist eines der bekanntesten Gesichter auf Konferenzen &#8211; kein Wunder, schließlich ist er seines Zeichens Developer Evangelist bei Microsoft. Die heutige Session hatte die Überschrift &#8220;Effizienter Code in C# 3.0&#8243; &#8211; das hörte sich vielversprechend an. Also dachte ich mir, wenn ich schon nicht in die Session von Berndt gehen kann (er war leider nicht anwesend und wurde durch Dariusz vertreten), dann höre ich mir mal an, was Dirk mir über Effizienz mit C# 3.0 zu erzählen hat.</p>
<p>Leider war nicht ganz in dem Paket drin was draufstand. Dirk verbrachte über die Hälfte der Zeit damit, die Geschichte von .NET und C# zu erzählen. Angefangen bei C# 1.0, über C# 2.0 bis zum aktuellen C# 3.0. Die aktuelle 3.0-Version kam dabei für meine Begriffe viel zu kurz. Dirk vermittelte in seiner Retrospektive über C# 2.0 sehr gut, was Generics, Anonymous Methods und Discrete Property Accessors sind. Doch besonders prickelnd war es nicht gerade, mittlerweile gängige Konstrukte nochmals vorgekaut zu bekommen. Mit C# 3.0 hatte das wenig zu tun, und mit effizientem Code auch nicht.</p>
<p>Wahrscheinlich habe ich mir unter dem Titel &#8220;Effizienz&#8221; etwas anderes vorgestellt als Dirk. Er ging auf Syntax und &#8220;eleganten&#8221; Code ein, wo ich eher Effizienz-Vergleiche zwischen konkrekten und anonymen Typen erwartet hätte. Dennoch war es nicht langweilig &#8211; wer Dirk schon öfter erleben durfte, der weiß warum.</p>
<p>Es blieb am Ende doch noch eine gute Viertelstunde übrig, um auf neue Sprachkonstrukte und Features von C# 3.0 einzugehen. Type Inference und das <code>var</code> Keyword, Object Initializer und Automatic Properties. Wie zu erwarten war, wurde die Verwendung des <code>var</code> Keywords &#8220;angeregt&#8221; diskutiert. Ich hatte mich in einem Post ja schon über den <a href="/stories/?p=187">Sinn und Zweck von var</a> geäußert. Äußerst bedauernswert fand ich allerdings, das kein Sterbenswörtchen über C# 4.0, die DLR, das <code>dynamic</code> keyword oder Duck Typing verloren wurde. Zumindest ein Ausblick und ein kurzer Rundflug wäre schön gewesen.</p>
<p>Fazit: Eine Mischung aus &#8220;Basics Workshop&#8221;, Human FxCop und OpenSpace Talk &#8211; locker, bekömmlich, bekannt.</p>
<p>Soviel zum ersten Tag. Mal sehen, was der zweite bringt&#8230; :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/technical-summit-08-teil-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WCF Custom Behavior Extensions &#8211; Nachtrag zur VSOne</title>
		<link>http://www.gmbsg.com/wcf-custom-behavior-extensions-nachtrag-zur-vsone/</link>
		<comments>http://www.gmbsg.com/wcf-custom-behavior-extensions-nachtrag-zur-vsone/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 10:54:43 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Architektur]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Works]]></category>
		<category><![CDATA[3.5]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[Objekt-Orientierung]]></category>
		<category><![CDATA[Software-Entwicklung]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Service]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=56</guid>
		<description><![CDATA[Als Nachtrag zu meinem Vortrag auf der VSOne habe ich kurzerhand ein essentielles Pattern &#8211; nämlich das Service Gateway Pattern &#8211; in einem Artikel näher beschrieben. Hier gehe ich vor Allem auf die Adaption des Patterns in der Windows Communication ...]]></description>
			<content:encoded><![CDATA[<p>Als Nachtrag zu meinem <a href="http://www.vsone.de/sprecher.aspx?experte=Ilker+Cetinkaya">Vortrag auf der VSOne</a> habe ich kurzerhand ein essentielles Pattern &#8211; nämlich das Service Gateway Pattern &#8211; in einem Artikel näher beschrieben. Hier gehe ich vor Allem auf die Adaption des Patterns in der Windows Communication Foundation ein.</p>
<p>Denn die WCF &#8211; und das ist ja nichts neues &#8211; ist extrem flexibel und erweiterbar. Interessant wird es allerdings erst, wenn diese Flexibilität und Erweiterbarkeit in der Praxis effektiv eingesetzt werden kann. </p>
<p>Mit Hilfe von <a href="/works/index.php?title=Service_Gateway_in_WCF_-_WCF_Custom_Behavior_Extensions">WCF Custom Behavior Extensions</a> kann man elegant eigene Behaviors dem WCF Kommunikationsstrom hinzufügen und somit effizient vertikale Funktionalität wie z.B. Validierung oder Restriktion implementieren.</p>
<p><a href="/works/index.php?title=Service_Gateway_Pattern_mit_der_WCF_und_Custom_Behavior_Extensions">Zum Artikel</a> habe ich auch noch ein paar Code Samples zum Download bereitgestellt.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/wcf-custom-behavior-extensions-nachtrag-zur-vsone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VSOne: SOA Patterns mit WCF</title>
		<link>http://www.gmbsg.com/vsone-soa-patterns-mit-wcf/</link>
		<comments>http://www.gmbsg.com/vsone-soa-patterns-mit-wcf/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 08:32:37 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Architektur]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[Objekt-Orientierung]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Service]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=55</guid>
		<description><![CDATA[Eine News in eigener Sache: Auf der diesjährigen VSOne (13.-14. Februar 2008) werde ich einen Vortrag über SOA Patterns mit dem .NET Framework und der Windows Communication Foundation halten.
Der Abstrakt:

Mit der neuen Windows Communication Foundation (WCF) ist es für .NET-Entwickler ...]]></description>
			<content:encoded><![CDATA[<p>Eine News in eigener Sache: Auf der diesjährigen <a href="www.vsone.de">VSOne</a> (13.-14. Februar 2008) werde ich einen Vortrag über SOA Patterns mit dem .NET Framework und der Windows Communication Foundation halten.</p>
<p>Der Abstrakt:</p>
<blockquote><p>
Mit der neuen Windows Communication Foundation (WCF) ist es für .NET-Entwickler einfacher als je zuvor, Web-Service-Technologien zu verwenden. Statt der technologischen Hürde sieht man nun vermehrt konzeptionelle Herausforderungen vor sich. Der Vortrag zeigt die wichtigsten Design Patterns in der Service-Orientierung und Web-Services-Architektur und auf deren Anwendungsbereich, praktischen Nutzen und Implementierung ein. Mit Kenntnis dieser grundlegenden SOA Patterns können stabile, performante und flexible Web Services mit der WCF umgesetzt werden.
</p></blockquote>
<p>Ich freue mich auf viele bekannte Gesichter auf der VSOne und natürlich auf euer Feedback!</p>
<p>Link: <a href="http://www.vsone.de/sprecher.aspx?experte=Ilker+Cetinkaya">VSOne: SOA Patterns mit WCF</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/vsone-soa-patterns-mit-wcf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WCF Performance &#8211; WCF vs. ASMX vs. WSE vs. ES vs. Remoting</title>
		<link>http://www.gmbsg.com/wcf-performance-wcf-vs-asmx-vs-wse-vs-es-vs-remoting/</link>
		<comments>http://www.gmbsg.com/wcf-performance-wcf-vs-asmx-vs-wse-vs-es-vs-remoting/#comments</comments>
		<pubDate>Sat, 08 Dec 2007 13:50:17 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[3.5]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Remoting]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Service]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=48</guid>
		<description><![CDATA[Wer sich schon länger mit verteilten Anwendungen und Web Services mit dem .NET Framework auseinandergesetzt hat, der wird wissen, dass der Performancezuwachs von .NET 1.1 auf .NET 2.0 schon massiv war. Mit der WCF wird es noch performanter, wie der ...]]></description>
			<content:encoded><![CDATA[<p>Wer sich schon länger mit verteilten Anwendungen und Web Services mit dem .NET Framework auseinandergesetzt hat, der wird wissen, dass der Performancezuwachs von .NET 1.1 auf .NET 2.0 schon massiv war. Mit der WCF wird es noch performanter, wie der <a href="http://msdn2.microsoft.com/en-us/library/bb310550.aspx">Performance-Vergleich</a> von Microsoft zeigt. </p>
<p>Dies deckt sich zum großen Teil auch mit den Erfahrungen, die ich bis Dato machen konnte. Schade finde ich es, dass der Performance-Vergleich z.B. nicht auf die einzelnen Bindings der WCF eingeht &#8211; aber der Artikel will ja primär die neue Technologie mit der alten vergleichen. Ich für meinen Teil durfte feststellen, dass für HTTP das BasicHttpBinding das schnellste ist. Wen wundert&#8217;s, es ist auch das einfachste.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/wcf-performance-wcf-vs-asmx-vs-wse-vs-es-vs-remoting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flat WSDL mit WCF &#8211; Verbesserung der Interoperabilität mit einfachen WSDL-Definitionen</title>
		<link>http://www.gmbsg.com/flat-wsdl-mit-wcf-verbesserung-der-interoperabilitat-mit-einfachen-wsdl-definitionen/</link>
		<comments>http://www.gmbsg.com/flat-wsdl-mit-wcf-verbesserung-der-interoperabilitat-mit-einfachen-wsdl-definitionen/#comments</comments>
		<pubDate>Wed, 05 Dec 2007 18:43:35 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[3.5]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Service]]></category>
		<category><![CDATA[WSDL]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=49</guid>
		<description><![CDATA[In einem Blog-Eintrag von Christian Weyer wird wunderbar beschrieben (und im Code-Sample gezeigt), wie man die &#60;import&#62;-Definitionen der von WCF automatisch generierten WSDL-Datei auflösen kann und alle notwendigen Service-Beschreibungen in einem einzigen WSDL-Dokument unterbringen kann.
Das bringt vor Allem Vorteile bei ...]]></description>
			<content:encoded><![CDATA[<p>In einem <a href="http://blogs.thinktecture.com/cweyer/archive/2007/05/10/414840.aspx">Blog-Eintrag von Christian Weyer</a> wird wunderbar beschrieben (und im Code-Sample gezeigt), wie man die &lt;import&gt;-Definitionen der von WCF automatisch generierten WSDL-Datei auflösen kann und alle notwendigen Service-Beschreibungen in einem einzigen WSDL-Dokument unterbringen kann.</p>
<p>Das bringt vor Allem Vorteile bei der Interoperabilität, denn &#8220;einfache&#8221; SOAP-Clients wie bei PHP oder Flex sind im Allgemeinen nicht in der Lage, den &lt;import&gt;-Definitionen innerhalb eines WSDL-Dokumentes zu folgen.</p>
<p>Der von Weyer beschriebene Ansatz ist einfach umzusetzen und funktioniert blendend. Ich möchte dazu allerdings ein paar Kleinigkeiten ergänzen, die leider meiner Meinung nach nicht ganz deutlich hervorgehoben wurden:</p>
<ul>
<li>Das &#8220;flattening&#8221; der WSDL-Definitionen funktioniert nur bei einem konfigurierten Endpoint<br/>(Ein üblicher Metadata-Exchange-Endpoint entfällt, weil es sowieso programmatisch hinzugefügt wird)</li>
<li>Der &#8220;bindingNamespace&#8221; des Endpoints muss demselben Namespace entsprechen wie der, der im ServiceBehaviorAttribute und ServiceContractAttribute angegeben ist.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/flat-wsdl-mit-wcf-verbesserung-der-interoperabilitat-mit-einfachen-wsdl-definitionen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eigene HTTP-Basic-Authentifizierung in ASP.NET</title>
		<link>http://www.gmbsg.com/eigene-http-basic-authentifizierung-in-aspnet/</link>
		<comments>http://www.gmbsg.com/eigene-http-basic-authentifizierung-in-aspnet/#comments</comments>
		<pubDate>Thu, 29 Nov 2007 18:31:25 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Works]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=45</guid>
		<description><![CDATA[Erst kürzlich war es mal wieder soweit, dass ich zum X-ten Mal ein eigenes HttpModule schreiben musste, damit ich eine HTTP-Basic-Authentifizierung gegen eigene Accounts in der Datenbank ermöglichen konnte. Da glaubt man, die Zeiten seien jetzt endgültig vorbei, in denen ...]]></description>
			<content:encoded><![CDATA[<p>Erst kürzlich war es mal wieder soweit, dass ich zum X-ten Mal ein eigenes HttpModule schreiben musste, damit ich eine HTTP-Basic-Authentifizierung gegen eigene Accounts in der Datenbank ermöglichen konnte. Da glaubt man, die Zeiten seien jetzt endgültig vorbei, in denen man umständlich per HttpModule sich in die ASP.NET-Pipeline hängen muss, um eine eigene HTTP-Basic-Authentifizierung machen zu können.</p>
<p>Aber weit gefehlt! Obwohl es z.B. in der WCF den neuen <a href="http://msdn2.microsoft.com/en-us/library/system.identitymodel.selectors.usernamepasswordvalidator.aspx">UserNamePasswordValidator</a> gibt, der eine einfache eigenständige Authentifizierung ermöglichen soll, stellt man leidvoll fest, dass es doch nicht für jeden Zweck ausreichend ist (siehe <a href="http://www.leastprivilege.com/WCFUsernamesOverTransportAndIISHosting.aspx">WCF und IIS Hosting mit Transport-Protokoll-Authentifizierung</a> von Dominick Baier).</p>
<p>Lange Rede, kurzer Sinn: Die <a href="http://www.gmbsg.com/works/index.php?title=Eigene_HTTP-Basic-Authentifizierung_in_.NET">eigene HTTP-Basic-Authentifizierung per IHttpModule</a> ist wieder ein Kandidat für meine Code-Snippet-Sammlung ICF.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/eigene-http-basic-authentifizierung-in-aspnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 und .NET 3.5 verfügbar</title>
		<link>http://www.gmbsg.com/visual-studio-2008-und-net-35-verfugbar/</link>
		<comments>http://www.gmbsg.com/visual-studio-2008-und-net-35-verfugbar/#comments</comments>
		<pubDate>Sat, 24 Nov 2007 11:55:53 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[3.5]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=43</guid>
		<description><![CDATA[Ich bin eigentlich kein Freund von Blog-Einträgen, die ihre inhaltliche Qualität auf die eines News-Tickers reduzieren, aber für diese &#8220;Neuigkeit&#8221; muss auch ich eine Ausnahme machen, zumal es aus meiner Sicht eine für .NET Entwickler wichtige Entwicklungsstufe darstellt.
Microsoft hat vor ...]]></description>
			<content:encoded><![CDATA[<p>Ich bin eigentlich kein Freund von Blog-Einträgen, die ihre inhaltliche Qualität auf die eines News-Tickers reduzieren, aber für diese &#8220;Neuigkeit&#8221; muss auch ich eine Ausnahme machen, zumal es aus meiner Sicht eine für .NET Entwickler wichtige Entwicklungsstufe darstellt.</p>
<p>Microsoft hat vor einigen Tagen <a href="http://msdn2.microsoft.com/en-us/vstudio/products/default.aspx">Visual Studio 2008 und .NET Framework 3.5</a> in ihrer finalen Version herausgegeben. Eine neue Produktversion, die es meiner Meinung nach in sich hat. Es sind eine Fülle von neuen Features hinzugekommen, die das Programmierer-Leben erleichtern sollen.</p>
<p>Die wichtigsten auf einen Blick:</p>
<ul>
<li>Multi-Targeting-Support (.NET Runtime Selection)</li>
<li>Verbesserter AJAX und JavaScript-Support</li>
<li>Ein neuer Web-Designer</li>
<li>LINQ</li>
<li>Anonyme Typen</li>
<li>Erweiterungs-Methoden (Extension Methods)</li>
<li>Lambda-Ausdrücke</li>
<li>.NET Source-Code-Browsing / Debugging</li>
<li>Verbesserungen der WCF-Infrastruktur</li>
<li>Ein stabiler WPF-Designer</li>
</ul>
<p>Wer sich die Features genauer ansehen möchte, kann auf der Microsoft-Seite die <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&#038;displaylang=en">.NET 3.5 Runtime</a> und eine kostenlose <a href="http://www.microsoft.com/express/download/">Visual Studio 2008 Express Edition</a> herunterladen.</p>
<p>Wesentlich detaillierter auf die neuen Features gehen natürlich die ganzen Microsoft-Evangelisten und MVP&#8217;s ein. Besonders viele Info&#8217;s findet man im <a href="http://weblogs.asp.net/scottgu/archive/2007/11/19/visual-studio-2008-and-net-3-5-released.aspx">Blog von Scott Guthrie</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/visual-studio-2008-und-net-35-verfugbar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET User Group Vortrag: Web Services Grundlagen</title>
		<link>http://www.gmbsg.com/net-user-group-vortrag-web-services-grundlagen/</link>
		<comments>http://www.gmbsg.com/net-user-group-vortrag-web-services-grundlagen/#comments</comments>
		<pubDate>Wed, 17 Oct 2007 15:14:40 +0000</pubDate>
		<dc:creator>Ilker Cetinkaya</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Architektur]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Works]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Service]]></category>

		<guid isPermaLink="false">http://www.gmbsg.com/stories/?p=38</guid>
		<description><![CDATA[Gestern durfte ich im Rahmen der .NET User Group München über konzeptionelle Grundlagen von Web Services referieren. Ich war ziemlich überrascht, dass dieses Thema reges Interesse ausgelöst hat; die Teilnehmerzahl war doch ziemlich hoch.
Für mich persönlich kann ich einen sehr ...]]></description>
			<content:encoded><![CDATA[<p>Gestern durfte ich im Rahmen der .NET User Group München über <a href="http://www.munichdot.net/Events/495.aspx">konzeptionelle Grundlagen von Web Services</a> referieren. Ich war ziemlich überrascht, dass dieses Thema reges Interesse ausgelöst hat; die Teilnehmerzahl war doch ziemlich hoch.</p>
<p>Für mich persönlich kann ich einen sehr positiven Eindruck von der Veranstaltung feststellen, zumal ich denke dass doch einige Teilnehmer nach dem Vortrag ein paar neue Erkenntnisse für sich mitnehmen konnten. Die angenehme und wissensdurstige Atmosphäre hat sicherlich seinen Beitrag für dazu geleistet, das ich meine Aufgabe als Referent mit einem gewissen Spaßfaktor erfüllen konnte.</p>
<p>Für all diejenigen, die nicht an der Veranstaltung teilehmen konnten oder die Teilnehmer, die gerne dass ganze nochmal nachlesen möchten habe ich im Works-Bereich einen <a href="http://www.gmbsg.com/works/index.php?title=Grundlagen_der_Erstellung_und_Verwendung_von_Web_Services">Artikel</a> bereitgestellt, in der die Kernthemen des Vortrages festgehalten sind. Dort stehen übrigens auch die <a href="http://www.gmbsg.com/works/index.php?title=Web_Service_Grundlagen_-_Download_Pr%C3%A4sentation">Präsentation</a> selbst sowie die gezeigten <a href="http://www.gmbsg.com/works/index.php?title=Web_Service_Grundlagen_-_Download_Code_Samples">Code-Samples</a> zum Download bereit.</p>
<p>Ich bin wie immer gespannt auf Feedback &#038; Kommentare. Viel Spaß mit den <a href="http://www.gmbsg.com/works/index.php?title=Grundlagen_der_Erstellung_und_Verwendung_von_Web_Services">Web Services Grundlagen</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gmbsg.com/net-user-group-vortrag-web-services-grundlagen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
