Product Idea
(http://www.queryadataset.com) I've developed which allows you to issue SQL
SELECT statements against the tables and columns in a Dataset.
I've started working on a product that will convert a SQL SELECT to the
equivalent ADO.NET source code. For example, the product converts the
simple query "SELECT CompanyName = cast(1+2 as int)" to the following,
equivalent .NET code.
Class GeneratedQuery Inherits BaseQuery PublicOverridesFunction Execute(ByVal dsAs System.Data.DataSet)As System.Data.DataView Dim outputAsNew DataTable Dim colAs DataColumn col =New DataColumn("CompanyName",GetType(System.Int32)) output.Columns.Add(col) Dim drAs DataRow = output.Rows.Add Dim viewAsNew DataView(output) |
This code can be paste into your application, along with the following code
to call it:
Dim query As BaseQuery = New GeneratedQuery
Dim view As DataView = query.Execute(ds)
The product will include a utility assembly which implements common
algorithms like distinct, innerjoin, matching a column, etc and the
generated code will reference this assembly as needed.
All SQL SELECT features like UNION, DISTINCT, LEFT, RIGHT, INNER JOINS,
sub-queries, GROUP BY, HAVING, ORDER BY, CAST, CASE, expressions, functions
and aggregates will be supported.
Initially, the product will output VB and C# code. Other languages can be
added later.
The product will be licensed by site and will cost $5000 US. This may sound
expensive, but consider the time to hand code and debug ADO.NET code for
several medium to complex querys. Days of development can be reduced to
seconds. Also, the source code for the utility assembly will be included
with the licensed product.
If anyone is interested, a trial version of the product will be available in
September 05.
Please e-mail me atqueryadataset@hotmail.com if you have comments, feature
requests, questions, etc. In particular, I'm interested to know if
1) you would like to see the tool to be integrated into Visual Studio, or be
standalone and/or command line.
2) support for other SQL statements like INSERT, UPDATE, DELETE, ALTER,
CREATE would be useful
Thanks
Ad.

