> First of all this all seems a little too good to be true
> is if there is an easy way that my database changes can automatically appear in the local database cache? Or will i also have to create a new local cache with every database change?
There is no _easy_ way for the changes to automatically appear. But the good news is that with ADO .NET SyncServices you do not need to create a new local cache every time.
The sync designer, as I show in the demo, creates change tracking information on the server. Thus whenever you call Synchronize() you fetch just what's changed since the last sync and just update your existing local cache.
I should point out, however, that currently we support only SQL Server Compact.
You can use LINQ to SQL with SQL Server Compact (although the OR designer in VS2008 does not support SQL Server Compact). You can define your DataContext (by hand) and the appropriate classes and use them.
Thanks Chris. The connection node in server explorer has a context menu command "Enable SQLCLR debugging". You can check that to enable this. Also when you create a SQLCLR project you are prompted for a connection to use as the target for your assembly.
If this is not enabled for this connection, you will be prompted to.