Entwickler-Ecke

Datenbanken (inkl. ADO.NET) - LINQ to SQL - Problem mit Datenaktualisierung


TThrebank - Mo 06.09.10 17:12
Titel: LINQ to SQL - Problem mit Datenaktualisierung
Ich grübel jetzt schon den ganzen Tag darüber, vielleicht kann mir ja hier jemand nen Tipp geben...
In meinem Projekt werden Daten mittels LINQ to SQL aus der Datenbank auf einem Formular dargestellt.
Die Form hat mehrere Eigenschaften vom Typ IQueryable<T> die ich im Konstruktor befülle.

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
private IQueryable<Aufträge> aufträge;

public frmKunden()
{            
   ...
   aufträge = from a in dcMX.Aufträge select a;
}

Soweit funktioniert das alles ganz gut, allerdings sind die Daten immer auf dem Stand beim Öffnen des Formulars, ist ja klar.
Jetzt würde ich gern die Daten aus der Datenbank aktualisieren während die Form geöffnet ist, also hab ichs mit der Refresh Methode der DataContext Klasse versucht

C#-Quelltext
1:
2:
3:
4:
private void frmKunden_Activated(object sender, EventArgs e)
{
   dcMX.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, aufträge);   
}

Das ganze scheint aber irgendwie keine Auswirkungen auf den Datenbestand zu haben...

Hat jemand eine Idee wie ich die Daten aktualisieren kann?
Wäre echt für jede Hilfe dankbar

Tobias


TThrebank - Di 07.09.10 13:15

Hab die Frage in nem anderen Forum [http://www.mycsharp.de/wbb2/thread.php?threadid=88535] nochmal gestellt...


IsNull - Di 07.09.10 13:34

Was spricht gegen ein DataSet + Databinding?
Über das DataSet kannst du dann auch zentral Datenvalidierung usw. betreiben und mittels ErrorProvider an die Frontents weiter reichen.


TThrebank - Di 07.09.10 15:26

Ich verstehe die Frage nicht ganz.
Meinst du ich soll im gesamten Projekt den Datenbankzugriff ändern?
Ich verwende halt überall LINQ to SQL um auf die Datenbank zuzugreifen und es ist mittlerweile ziemlich groß.