Download - Linq tools
LINQ TOOLS
Jim Wooleywww.ThinqLinq.com
www.LinqInAction.netwww.Twitter.com/LinqKinq
AGENDA
Samples and Plugins Stand alone profilers Designer extensions Code Gen Extensions Providers
SAMPLES
What is it? The LINQ Samples include tools, addins and visualizers
Download Site: http://code.msdn.microsoft.com/csharpsamples
Example Problem(s) it solves Allows you to peak under the covers and see what LINQ
is doing Makes it easier to work with XML in C#
Installation Notes: Find the downloads in Visual Studio clicking on Help
then Samples
LINQ SAMPLES
EF VISUALIZER
What is it? Visualizer for Entity Framework Queries
Download Site: www.rajvenkatesh.com/projects
Example Problem(s) it solvesSee the queries generated by the Entity Framework.
Installation Notes: XCopy Deploy library into Visualizers directory
QUERY PROFILER
What is it? SQL Server’s built in profiler tool to show all requests evaluated by server
Download Site: N/A
Example Problem(s) it solvesSee the queries issued to the database, including updates.
Installation Notes: Installed with the SQL Server client tools
Usage Notes: Works only with SQL Server
$
HUAGATI LINQ TO SQL PROFILER
What is it? Profiling tool to monitor DataContext actions.
Download Site: http://www.huagati.com/L2SProfiler/
Example Problem(s) it solvesDifficult to see database actions in a running application.
Installation Notes: Custom installer.
Usage Notes: Need to add extension methods on DataContext to enable logging.
$
L2S PROF
What is it? Profiling tool to monitor DataContext actions.
Download Site: http://l2sprof.com/home
$
LINQPAD
What is it? Stand alone tool to prototype LINQ and .Net code.
Download Site: http://www.LinqPad.Net
Example Problem(s) it solvesLearn LINQ without needing to create full solutions.Easily prototype LINQ queries.
Installation Notes: X Copy Deployment
Usage Notes: Includes samples from “C# In a Nutshell“ and “LINQ in Action”
LINQ TOOLS – EDM DESIGNER
What is it? Replacement editor for managing large EDMX models
Download Site: http://www.codeplex.com/edmdesigner
Example Problem(s) it solvesManaging large databases is difficult in a single view.
Installation Notes: X-copy deploy (includes source)
Usage Notes: http://msmvps.com/blogs/matthieu/archive/ tags/EDM+Designer/ default.aspx
HUAGATI DBML/EDMX TOOLS
What is it? VS Add-in to manage refreshing models and DB Schemas
Download Site: http://www.huagati.com/dbmltools/
Example Problem(s) it solvesExisting tools have problems when the DB Schema changes. This adds refresh abilities.
Usage Notes: Integrated into Visual Studio
$
CODE GEN - L2ST4
What is it? T4 Code Generation Templates for LINQ to SQL
Download Site: http://l2st4.codeplex.com/
Example Problem(s) it solvesCustomize the code created for the LINQ to SQL Classes
Installation Notes: Xcopy deployment of 2 files. Remove build action on .dbml file.
Usage Notes: T4 used heavily in VS 2010
CODE GEN– PLINQO
What is it? Supercharged LINQ to SQL
Download Site: http://plinqo.com
Example Problem(s) it solvesAdds features missing in LINQ to SQL.
Installation Notes: Requires CodeSmith (but see http://plinqo.com/offer.ashx)
$
LINQ PROVIDERS – I4O
What is it? Indexed LINQ to Objects
Download Site: http://www.codeplex.com/i4o
Example Problem(s) it solvesLINQ to Object joins perform use table scans. This adds hashtables to optimize frequent lookups.
Installation Notes: Build and add reference
Usage Notes: Explained at http://blog.magenic.com/blogs/aarone/archive/2007/04/09/ Introducing-i4o.aspx
LINQ PROVIDERS – PLINQ
What is it? Parallel LINQ To Objects
Download Site: N/A: Included in .Net 4.0
Example Problem(s) it solvesProvides Multi-core support for LINQ to Objects queries
Usage Notes: Add the reference and then make your query parallel using .AsParallel
LINQ PROVIDERS – LINQ TO XSD
What is it? Typed LINQ to XML
Download Site: http://linqtoxsd.codeplex.com/
Example Problem(s) it solvesLINQ to XML queries are not typesafe and don’t have intellisense.
Installation Notes: See ReadMe.txt. Need to add Environment Variable.
Usage Notes: Point the command line tool at a schema to generate the proxy classes.
LINQ PROVIDERS – LINQ TO REST
What is it? LINQ provider to consume ADO.Net Data Services
Download Site: N/A: Included with .NET 3.5 sp 1
Example Problem(s) it solvesADO.Net Data Services adds another query syntax in the URI. This abstracts that syntax.
Installation Notes: Add reference
Usage Notes: Many LINQ statements can’t be translated to URI causing runtime exceptions
LINQ PROVIDERS – LINQ TO TWITTER
What is it? Sample LINQ provider to access the Twitter APIs
Download Site: http://linqtotwitter.codeplex.com/
Example Problem(s) it solvesUnderstand how to build custom LINQ providers against non-standard data sources
Installation Notes: Build and add reference
Usage Notes: Requires building for x86 for authentication. Also supports OAuth.
LINQ PROVIDERS – BLINQ
What is it? Sample LINQ provider to access the BING API
Download Site: http://www.nikhilk.net/BLinq-LINQ-over-Bing.aspx
Example Problem(s) it solvesUnderstand how to build custom LINQ providers against non-standard data sources
Installation Notes: Build and add reference
Usage Notes: Requires an AppID from http://www.bing.com/developers
LINQ PROVIDERS – IQUERYABLE TOOLKIT
What is it? Tool sample to understand parsing Iqueryable types.
Download Site: http://www.codeplex.com/IQToolkit
Example Problem(s) it solvesBuilding a provider is difficult.
Usage Notes: See Matt Warren’s impressive tome starting with http://blogs.gotdotnet.com/mattwar/archive/2007/07/30/linq-building-an-iqueryable-provider-part-i.aspx
TOOL TYPES
• Query Visualizer• Expression Tree Visualizer• Paste As Xml Element
Samples• SQL Server Query Profiler• LINQPad• Huagati LINQ to SQL Profiler
Profilers• EDM Designer• Huagati DBML/EDMX Tools
Designer
• L2ST4• PLINQO
Code Gen
• I4O PLINQ• LINQ to XSD LINQ to REST• LINQ to Twitter BLINQ
Providers
Jim Wooleywww.ThinqLinq.com
www.LinqInAction.netwww.Twitter.com/LinqKinq
QUESTIONS
www.SpeakerRate.com/jwooley