This is, of course, the IsDbGenerated property that you need to look at, not AutoSync.
I see you have described one scenario in which you want to set the identifier in the application. Is there any other scenario when you need it to be automatically generated by the database? If not, you can simply set IsDbGenerated = false and populate Guid.NewGuid () in your WCF service if / when you don't already have an identifier from the client.
One of the advantages of using rowguid instead of the identity column is that you are allowed to insert certain values ββinto the rowguid column, but you do not need this. You can save the column as rowguid with DEFAULT NEWID (), but set IsDbGenerated = false in your service, and it will work until you remember the actual filling of the identifier.
source share