2010-06-23 5 views

Répondre

1

Pour MySql vous pouvez sepecify le CommandTimeout dans le connectionstring:

<connectionStrings> 
    <add name="Local" connectionString="Server=localhost; 
     Database=db;uid=admin;Password=pass;default command timeout=60" /> 
</connectionStrings> 

Mais pour SqlServer vous ne pouvez pas faire autant que je sache. Pour SubSonic 2, il n'y a pas de moyen facile d'obtenir cela. Il y a plusieurs commandes codées dans les délais d'attente dur la source (regardez le fichier SqlDataProvider.cs)

Query.cs

private int commandTimeout = 60; 

QueryCommand.cs

/// <summary> 
/// Summary for the QueryCommand class 
/// </summary> 
public class QueryCommand 
{ 
    private string _providerName = String.Empty; 
    private int commandTimeout = 60; // change to whatever you like and recompile 

StoredProedure.cs:

private int commandTimeout = 60; 

Je ne sais pas si j'ai manqué certaines parties mais si vous les changez valeurs et recompiler SubSonic vous devriez aller bien.

Si vous ne voulez pas faire et que vous utilisez l'outil de requête vous pouvez définir le délai d'attente lors de l'exécution avec

cmd.CommandTimeout = 600;