Code for Rapid C# Windows Development eBook + LINQPad and Data Tools
The worked example in Joseph Chancellor’s book Rapid C# Windows Development which uses LLBLGen Pro to connect to the Adventure Works sample database.
It also contains this Enumerable Debugger Visualizer for Visual Studio, an LLBLGen Entity Browser and some LINQPad Extensions and Tools and a few Winform Controls.
The book, published in February 2006 about 'Quickly Build Robust, Database-Driven Applications', along with the code is a great introduction into performing common tasks in Database-Driven Applications, however it was written with version 1.X of LLBLGen Pro so I have updated it to work with the later versions (2.6, 3.x and 4.x). At the same time I wanted to use this code as a starting point for evaluating LINQ To LLBLGen so I have converted all of the queries to use LINQ (but kept the originals for comparison).
Additional controls and tools contained in this project
- Enumerable Debugger Visualizer for Visual Studio that displays any registered (currently 575 mainly BCL) IEnumerable object such as a lists, collections, dictionaries and Linq enumerables in a GridDataEditor.
- LLBLGen Entity Browser is an application that lets you browse, view and edit the data in a database via the mapped LLBLGen Pro entities.
- Object as Source Code Debugger Visualizer is a Debugger Visualizer that displays C# source code the will generate the .Net object chosen in the debugger.
- List IIS Apps is a web app which provides a clickable list of all the web applications on an IIS instance along with metadata such as connection strings and app settings (Think web-based read only IIS Manger).
- LINQPad Extensions and Tools
- LLBLGen Pro Driver to show LLBLGen Pro generated entities in the Schema Explorer.
- Custom Visualizers that expose some of the Winform Controls below to be displayed in the LINQPad output panel.
- Winform Controls
- DataTreeView. An enhanced version of this Databound TreeView control for displaying Adjacency List (self referencing) data.
- HierarchyEditor, based on the DataTreeView, for displaying and editing Adjacency List (self referencing) data. (Available in LINQPad )
- GridDataEditor. Essentially a paged DataGridView, implemented as a UserControl containing an ADGV.AdvancedDataGridView and two BindingNavigator’s, one for the data and one for the pages. (Available in LINQPad )
- Entity Browser to browse and edit LLBLGen Pro entities from a database. (Available in LINQPad )
- Object Inspector for browsing the properties of an object and any objects it references. (Available in LINQPad )
- QueryRunner. A query runner user control (poor man's version of LINQPad).
Background
Acknowledgements, credits and attributions
Links
http://www.lulu.com/josephchancellor
http://josephchancellor.wordpress.com
http://www.llblgen.com
http://www.linqpad.net
Thanks to Joseph Chancellor for writing the book and making the code available for this project