Según MSDN Libraryconfuso que usa el "uso" Boletín C#
using Statement (C# Reference)
Defines a scope, outside of which an object or objects will be disposed.
Pero tengo este código publicado aquí por algunos usuarios y llegué confundido acerca de esto: (por favor ver mi comentario sobre el código)
using (OleDBConnection connection = new OleDBConnection(connectiongString))
{
if (connection.State != ConnectionState.Open)
connection.Open();
string sql = "INSERT INTO Student (Id, Name) VALUES (@idParameter, @nameParameter)";
using (OleDBCommand command = connection.CreateCommand())
{
command.CommandText = sql;
command.CommandType = CommandType.Text;
OleDBParameter idParameter = command.CreateParameter();
idParameter.DbType = System.Int32;
idParameter.Direction = Parameterdirection.Input;
idParameter.Name = "@idParameter";
idParameter.Value = studentId;
OleDBParameter nameParameter = command.CreateParameter();
try
{
command.ExecuteNonQuery();
}
finally
{
// Is it still necessary to dispose these objects here?
command.Dispose();
connection.Dispose();
}
}
}
En el código anterior, ¿se usa correctamente la declaración using
? Estoy confundido, ¿alguien puede explicar cómo usar la declaración using
y su alcance y cuándo, dónde y por qué usarlo? Gracias ..
realmente igual a if (x! = Null) {((IDisposable) x) .Dispose(); } - using Statement (C# Reference) http://bit.ly/acmoOD –
Me parece triste que solo porque he publicado mi respuesta un minuto antes tengo (actualmente) el doble de votos, esto no es un buen augurio para SO , tu pregunta no es inferior a la mía de ninguna manera, pero como no dibujaste lo suficientemente rápido (probablemente) no se elevará por encima de la mía. – Motti
Así es como funciona SO en este momento, y no estoy seguro si hay una "solución" rápida para eso tampoco. Lamentablemente, promueve respuestas rápidas en lugar de respuestas bien pensadas. A menudo me encuentro escribiendo una respuesta rápida, incluso si sé que voy a tener que editarla más adelante para no quedar completamente hundida. He pensado en esto por un tiempo, y una sugerencia que tengo es que después de que se publique una pregunta, no se muestren las respuestas durante 10 minutos, y luego de 10 minutos todas las respuestas escritas en este período se muestran en orden aleatorio con la misma marca de tiempo Puede ser una buena idea;) –