2009-08-19 6 views

Répondre

31

Non, ils sont la même chose.

Je démonte SqlConnection.CreateCommand et trouvé ceci:

public SqlCommand CreateCommand() 
{ 
     return new SqlCommand(null, this); 
} 

ce qui prouve qu'ils sont vraiment la même chose.

7

Fonctionnellement, ils sont exactement les mêmes.

Toutefois, SqlConnection.CreateCommand() vous permet d'être plus indifférent sur le type de base de données que vous utilisez. Par exemple, au lieu de passer une instance SqlConnection autour, vous pouvez le passer comme DbConnection ce qui donnerait un DbCommand.

9

Ils font la même chose. La logique derrière SqlConnection.CreateCommand consiste à implémenter le modèle d'usine.

Questions connexes