J'ai une procédure stockée CLR que je veux exécuter de manière asynchrone à partir de C#.fonction asynchrone ne pas exécuter la procédure stockée SQL CLR
le code est le suivant:
private delegate void GeneratePayrollDelegate(string payProcessID);
public void GeneratePayroll(string payProcessID)
{
GeneratePayrollDelegate del = new GeneratePayrollDelegate(GeneratePayrollAsync);
del.BeginInvoke(payProcessID, null, null);
}
public void GeneratePayrollAsync(string payProcessID)
{
try
{
using (SqlConnection connection = new SqlConnection(DLConnectionStringHelper.GetConnectionString() + "; async=true;"))
{
using (SqlCommand cmd = new SqlCommand("proc_GeneratePayroll", connection))
{
cmd.CommandTimeout = 3600;
cmd.CommandType = CommandType.StoredProcedure;
connection.Open();
cmd.ExecuteNonQuery();
connection.Close();
}
}
}
catch (Exception ex) { _Exceptions.ManageExceptions(ex); }
}
Cette procédure stockée exécute avec succès si elle va de sql.
Quand il exécute à partir de ce code ci-dessus, il donne aucune ligne dans la procédure stockée CLR lorsque vous essayez de récupérer la ligne par l'ID envoyé comme paramètre.
Besoin d'aide!
et l'erreur est? – Jodrell
Dans le proc CLR, l'une des fonctions est de prendre des informations nécessaires relatives à cette payprocessID, elle retourne aucune ligne. lorsque je tente de récupérer la ligne à postion 0, il donne plage exception – Boomer
Ainsi, il exécute toujours avec succès, mais vous obtenez des résultats inattendus? Il vaudrait mieux éditer la question. – Jodrell