LINQ to SQL:DataContext.SubmitChanges nicht sofort aktualisieren

Habe ich ein komisches problem.

Tun DataContext.SubmitChanges() aktualisiert Count() in einer Art und Weise, aber nicht in der anderen, siehe mein Kommentar im code unten.
(DC ist der DataContext)

  Company c = DC.Companies.SingleOrDefault(x => x.Name == companyName);
  DataCompliance compliances = c.DataCompliances.Where(x => x.ComplianceCriteria.FKElement == e.Id);

  if (compliances.Count() == 0) //Insert if not exists
  {
    DC.DataCompliances.InsertOnSubmit(new DataCompliance {
      FKCompany = c.Id,
      FKComplianceCriteria = criteria.Id
    });
    DC.SubmitChanges();

    compliances = c.DataCompliances.Where(x => x.ComplianceCriteria.FKElement == e.Id);

    //At this point DC.DataCompliances.Count() has increased,
    //but compliances.Count() is still 0
    //When I refresh the page however, it will be 1
  }

Warum geschieht das?

Ich aktualisieren compliances unmittelbar nach dem einlegen ein. Hat jemand eine Lösung?

InformationsquelleAutor Aximili | 2011-01-14
Schreibe einen Kommentar