Dynamic LINQMartin Hey21.07.2010Communardo Software GmbH
2Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0im .NET-Framework integrierte Abfragespracheerlaubt typsichere AbfragenSQL-ähnliche SyntaxBeispiele:LINQ To Objects – was ist das?
3Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0wird bereits zur Entwurfszeit auf Korrektheit geprüfterlaubt typsichere Abfragen auch über komplexe Objektstrukturen, z.B. durch Aggregierung, Projektion, Joins, Berechnungen etc.LINQ To Objects – was ist das?
4Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0wird über Extension-Methods realisiertLINQ To Objects – was ist das?
5Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0Use-Case: Die Anwender sollen selbst im User-Interface definieren können, nach welchen Attributen die anzuzeigenden Objekte gefiltert und sortiert werden sollen.eines der großen Pro‘s von LINQ wird zum „Verhängnis“ – die TypsicherheitWarum dynamisch?
6Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0LINQ Queries sind aufgebaut als sog. Expression-Treevisualisierbar z.B. mit Expression Tree Viewer (http://sourceforge.net/projects/exprview/)Dynamisch… aber wie?
7Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0Liste von Objekten vom Typ „Restaurant“dynamische Filterung und Sortierung der Daten nach vom Anwender gewählten Kriteriendynamischer Aufbau des ExpressionTreesggf. per Reflection mögliche Kriterien ermitteln Visualisierung der Ergebnisse in einem GridWas ist zu tun?
8Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0      jetzt wird programmiert     Demo
9Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-0LINQ Dynamic Query Libraryhttp://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspxWas gibt‘s noch?
Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-010
11Communardo Software GmbH · Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de ·  Tel. +49 (351) 8 33 82-025.08.2010Einführung in die Windows Phone 7 Entwicklung (Martin Hey)ggf. Buildmanagement, Branching- und Merging-Strategien mit dem TFS (Robert Mühsig)22.09.2010ASP.NET MVC DeepDive (Albert Weinert)Nächste Termine

Dynamic LINQ

  • 1.
  • 2.
    2Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0im .NET-Framework integrierte Abfragespracheerlaubt typsichere AbfragenSQL-ähnliche SyntaxBeispiele:LINQ To Objects – was ist das?
  • 3.
    3Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0wird bereits zur Entwurfszeit auf Korrektheit geprüfterlaubt typsichere Abfragen auch über komplexe Objektstrukturen, z.B. durch Aggregierung, Projektion, Joins, Berechnungen etc.LINQ To Objects – was ist das?
  • 4.
    4Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0wird über Extension-Methods realisiertLINQ To Objects – was ist das?
  • 5.
    5Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0Use-Case: Die Anwender sollen selbst im User-Interface definieren können, nach welchen Attributen die anzuzeigenden Objekte gefiltert und sortiert werden sollen.eines der großen Pro‘s von LINQ wird zum „Verhängnis“ – die TypsicherheitWarum dynamisch?
  • 6.
    6Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0LINQ Queries sind aufgebaut als sog. Expression-Treevisualisierbar z.B. mit Expression Tree Viewer (http://sourceforge.net/projects/exprview/)Dynamisch… aber wie?
  • 7.
    7Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0Liste von Objekten vom Typ „Restaurant“dynamische Filterung und Sortierung der Daten nach vom Anwender gewählten Kriteriendynamischer Aufbau des ExpressionTreesggf. per Reflection mögliche Kriterien ermitteln Visualisierung der Ergebnisse in einem GridWas ist zu tun?
  • 8.
    8Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0   jetzt wird programmiert   Demo
  • 9.
    9Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-0LINQ Dynamic Query Libraryhttp://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspxWas gibt‘s noch?
  • 10.
    Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-010
  • 11.
    11Communardo Software GmbH· Kleiststraße 10a · D-01129 Dresden/Germanyinfo@communardo.de · www.communardo.de · Tel. +49 (351) 8 33 82-025.08.2010Einführung in die Windows Phone 7 Entwicklung (Martin Hey)ggf. Buildmanagement, Branching- und Merging-Strategien mit dem TFS (Robert Mühsig)22.09.2010ASP.NET MVC DeepDive (Albert Weinert)Nächste Termine