Q:

How to force a WCF data service to refresh entities?

I'm using a WCF data Service to access a MSSQL database. If the client requests data (e.g. from the table "Projects") i build my cache like this:
var collection = new ObservableCollection<Project>();
foreach (var project in this.Entities.Project)
{
   collection.Add(project);
}

return collection;

If I want to refresh the list I just call 
collection.Clear();

and call the above method again. If I edit a project and refresh the list as described above it works fine, but if i change the data on one client instance and refresh the list on another one the service doesn't load the changed project.
How can I force the DataService to re- load a whole entity (e.g. "Projects") even if from the service's point of view nothing has changed?

A:

Possible solution:

public partial class Entities
{
    public void RefreshProject(Project pr)
    {
        this.Detach(pr);
        pr = this.Project.Where(p => p.Id == pr.Id).Single();
    }
}

Usage:

entities.RefreshProject(project);

