Entwickler-Ecke

Datenbanken (inkl. ADO.NET) - "Using" + Context bei Entity Framework?


Nally - So 23.11.08 22:26
Titel: "Using" + Context bei Entity Framework?
Hallo,

was bedeutet dieses Using in Verbindung mit dem Erzeugen eines ObjectContext beim Entity Framework?


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
using (Entities myDb = new Entities())
{
    Subscribers subscriber = new Subscribers();
    subscriber.Name = "David Hayden";
    subscriber.Email = "emailaddress";

    myDb.AddObject(subscriber);

    int count = myDb.SaveChanges();
}


Christian S. - So 23.11.08 22:32

using ist dasselbe wie

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
Entities myDb = new Entities();
try
{
  ...
}
finally
{
  myDb.Dispose();
}


Es sorgt also "nur" dafür, dass auch die entsprechenden "Aufräumarbeiten" ausgeführt werden. Welche das sind, hängt ganz von der Klasse ab und was die Dispose-Methode darin macht. Würde in dem Zusammenhang mal tippen, dass z.B. irgendwelche Datenbank-Verbindungen freigegeben werden :nixweiss:


Nally - Mo 24.11.08 00:35

user profile iconChristian S. hat folgendes geschrieben Zum zitierten Posting springen:
using ist dasselbe wie

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
Entities myDb = new Entities();
try
{
  ...
}
finally
{
  myDb.Dispose();
}


Es sorgt also "nur" dafür, dass auch die entsprechenden "Aufräumarbeiten" ausgeführt werden. Welche das sind, hängt ganz von der Klasse ab und was die Dispose-Methode darin macht. Würde in dem Zusammenhang mal tippen, dass z.B. irgendwelche Datenbank-Verbindungen freigegeben werden :nixweiss:


Ja sowas dachte ich mir auch bzw. so hatte ich es in Erinnerung, dass das lästige öffnen/schließen einer verbindung mit fehlerbehandlung schon impliziert ist, danke.