J'ai une boîte SQL Server 2005 mis en place pour la réplication de fusion à SQL Server CE 3.0. La publication, l'éditeur, le distributeur et IIS ont tous été mis en place.Erreur de réplication SQL Server
Dans ma demande, je tente de synchroniser les bases de données en utilisant le code suivant:
//TODO: Change for production
//***************************
string localDBPath = @"C:\Documents and Settings\Robert\Desktop\MyDB.sdf";
//***************************
SqlCeReplication replicator = new SqlCeReplication();
replicator.InternetUrl = "http://myWebServer/sqlcesa30.dll";
replicator.Publisher = "mySqlServer";
replicator.PublisherDatabase = "myDatabase";
replicator.PublisherSecurityMode = SecurityType.NTAuthentication;
replicator.Publication = "myPublication";
replicator.Subscriber = Dns.GetHostName();
replicator.SubscriberConnectionString = @"Data Source=" + localDBPath;
try
{
// Check if the database file already exists
if (!System.IO.File.Exists(localDBPath))
{
// Add a new subscription and create the local database file
replicator.AddSubscription(AddOption.CreateDatabase);
}
// Transfer the initial snapshot of data if this is the first time this is called.
// Subsequent calls will transfer only the changes to the data.
replicator.Synchronize();
}
catch (SqlCeException ex)
{
// Display any errors in message box
MessageBox.Show(ex.Message);
}
finally
{
// Dispose of the SqlCeReplication object, but don't drop the subscription
replicator.Dispose();
}
Malheureusement, ce code échoue à la ligne "replicator.Synchronize" avec le message d'erreur suivant:
Échec de la connexion à SQL Server avec les informations de connexion fournies. SQL Server n'existe pas, l'accès est refusé car l'utilisateur IIS n'est pas un utilisateur valide sur SQL Server ou le mot de passe est incorrect.
Ce message d'erreur est pas très clair pour moi et je suis à court d'endroits pour chercher la cause de cela. Des idées?