FSharp.Data.SqlClient relies on sys.sp_describe_first_result_set
to discover the schema of a query's result set. The problem is that this requires a connection to the SQL Server database at design/build time. Is it possible to get this information from a .dacpac
? Data-tier Applications claim to "enable declarative database development".
There are libraries to read the dacpac and its contents and the T-SQL AST. I would think the input and output types could be derived from that info.
// C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\Microsoft.SqlServer.Dac.dll
// C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\Microsoft.SqlServer.Dac.Extensions.dll
// C:\Program Files (x86)\Microsoft SQL Server\120\SDK\Assemblies\Microsoft.SqlServer.TransactSql.ScriptDom.dll
open Microsoft.SqlServer.Dac
open Microsoft.SqlServer.Dac.Model
open Microsoft.SqlServer.TransactSql.ScriptDom
Is deriving a list of the inputs and output from the declarative model possible/reliable? Is there a good place to log a feature request? :-)