"mit" Nach MSDN LibraryConfused Anweisung using C#
using Statement (C# Reference)
Defines a scope, outside of which an object or objects will be disposed.
Aber ich habe diesen Code hier von einigen Benutzern geschrieben und ich habe verwirrt darüber: (bitte meinen Kommentar auf dem Code sehen)
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();
}
}
}
In dem obigen Code, wird die using
Anweisung richtig verwendet? Ich bin verwirrt, kann jemand bitte erklären, wie man using
Aussage und seine Festlegung und wann, wo und warum es zu verwenden. Danke ..
eigentlich gleich zu wenn (x! = Null) {((IDisposable) x) .Dispose(); } - using-Anweisung (C# -Referenz) http://bit.ly/acmoOD –
Ich finde es traurig, dass, nur weil ich meine Antwort eine Minute vor Ihnen veröffentlicht habe, habe ich (derzeit) zweimal die Stimmen, dies verheißt nichts Gutes für SO Deine Frage ist meiner nicht unterlegen, aber weil du nicht schnell genug gezeichnet hast, wird sie sich (wahrscheinlich) nicht über meine erheben. – Motti
So funktioniert SO in dem Moment, denke ich, und ich bin mir nicht sicher, ob es auch eine schnelle "Lösung" dafür gibt. Leider fördert es schnelle Antworten statt gut durchdachte. Ich finde oft eine schnelle Antwort, auch wenn ich weiß, dass ich sie später bearbeiten muss, um nicht komplett versenkt zu werden. Ich habe über eine Weile darüber nachgedacht, und ein Vorschlag, den ich habe, ist, dass, nachdem eine Frage bekanntgegeben wurde, keine Antworten für 10 Minuten angezeigt werden, und nach 10 Minuten werden alle in diesem Zeitraum geschriebenen Antworten in zufälliger Reihenfolge angezeigt der gleiche Zeitstempel. Könnte eine gute Idee sein;) –