J'utilise SqlKata uniquement pour construire des requêtes SQL en C#. Je souhaite prendre la sortie de mes requêtes construites en C#. Query
Le logiciel de gestion de la base de données SQL, récupère la chaîne sql brute (compilée) et l'exécute contre SQL.
J'ai pensé que cela suffirait :
var factory = new QueryFactory(null, new SqlServerCompiler());
var query = new Query();
...
var sqlText = factory.Compiler.Compile(query).Sql;
Mais ceci donne ceci :
SELECT TOP (@p0) [AllStarFull].[GameNumber], [AllStarFull].[LeagueId], [AllStarFull].[PlayedInGame] FROM [AllStarFull]
Une exception est levée parce que (@p0)
est un paramètre et non la valeur réelle.
Dans la documentation, il est indiqué d'introduire Logger
mais je n'ai pas vraiment besoin de la fonctionnalité de journalisation (pour l'instant).
https://sqlkata.com/docs/execution/logging
var db = new QueryFactory(connection, new SqlServerCompiler());
// Log the compiled query to the console
db.Logger = compiled => {
Console.WriteLine(compiled.ToString());
};
var users = db.Query("Users").Get();
Existe-t-il un moyen d'obtenir la chaîne sql brute à partir du fichier Query
avec tous les paramètres renseignés ?