Dlaczego moje LINS INSERTS nie są zachowywane w SQL Server CE 3.5?

Używam LINQ do SQL z Sql Server Compact Edition 3.5 i VS2008.

Mam bardzo prostą tabelę (Tokeny) z kluczem podstawowym uniqueidentifier (TokenID) i dwiema innymi polami z dopuszczalną wartością (UsedBy i UsedOn). Próbuję użyć LINQ, aby wstawić nowe wiersze do tabeli, ale z jakiegoś powodu nie są one trwałe.

Oto mój kod:

        var connectionstring = "Data Source=|DataDirectory|\\MyData.sdf";
        MyData db = new MyData(connectionstring) { Log = Console.Out };

        Tokens token = new Tokens { TokenID = Guid.NewGuid() };
        db.Tokens.InsertOnSubmit(token);
        //db.GetChangeSet();
        db.SubmitChanges();

        var tokens = from t in db.Tokens
                     select t;
        foreach (var t in tokens)
        {
            Debug.Print(t.TokenID.ToString());
        }

Jeśli odkomentuję db.GetChangeSet (); Widzę oczekującą wstawkę, a kiedy iteruję i wypisuję je w wdowieniu debugowania, liczba żetonów rośnie za każdym razem. Ale jeśli sprawdzę tabelę w VS (poprzez Show Data Data), jest ona pusta? Przeglądanie takich danych również „resetuje” tokeny zwracane przez LINQ w ich pierwotnym stanie.

Jestem pewien, że popełniam prosty błąd, ale nie widzę tego. Jakieś pomysły?

questionAnswers(2)

yourAnswerToTheQuestion