OVH Community, votre nouvel espace communautaire.

problème pour publier une app avec webdeploy


_G4ry
03/11/2012, 11h31
Bonjour

J'ai fini par trouver la solution.

Lors du développement de mon application, en local, j'utilisais une connectionString appelée DefaultConnection qui pointait vers un fichier .mdf. J'avais configuré mon objet DbContext pour qu'il s'initialise avec cette connexion.

Lors du déploiement de l'application sur le serveur ovh avec WebDeploy, le fichier web.config a été modifé et une nouvelle connectionString a été ajoutée, sauf que cette fois, elle portait le nom de mon DbContext.

J'ai donc du modifier certains fichiers comme le global.asax pour remplacer le nom de la connectionString partout ou elle était utilisée

J'ai également commenté la 3ème connectionString créée automatiquement lors du déploiement qui s'appelait MonDBContext_DatabasePublish ainsi que la partie dans l'élément du fichier web.config.

Je ne sais pas exactement à quoi ils servent mais l'application fonctionne sans...

J'ai pu accéder à la page d'accueil. Par la suite j'ai eu quelques soucis car certaines tables de ma base de données n'avaient pas été générées. Je les ai créées manuellement via myLittleAdmin de OVH.

Voilà voilà, problème résolu

_G4ry
02/11/2012, 00h54
J'ai fini par trouver une solution à ce problème en lisant plusieurs topics sur ce forum et ailleurs. J'ai supprimé le dossier www déjà présent à la racine de mon ftp et le webdeploy est bien passé

Par contre maintenant, j'ai un autre soucis. La page d'accueil ne se charge pas et j'obtiens le message d'erreur suivant:

[ArgumentException: Keyword not supported: 'server'.]
System.Data.SqlServerCe.SqlCeConnectionStringBuild er.set_Item(String keyword, Object value) +813
System.Data.Common.DbConnectionStringBuilder.set_C onnectionString(String value) +2225420
System.Data.SqlServerCe.SqlCeConnectionStringBuild er..ctor(String connectionString) +271
System.Data.SqlServerCe.SqlCeConnection.set_Connec tionString(String value) +313
WebMatrix.Data.DbProviderFactoryWrapper.CreateConn ection(String connectionString) +331
WebMatrix.Data.Database.EnsureConnectionOpen() +32
WebMatrix.Data.d__0.MoveNext() +79
System.Linq.Enumerable.FirstOrDefault(IEnumerable` 1 source) +247
WebMatrix.WebData.SimpleMembershipProvider.CheckTa bleExists(IDatabase db, String tableName) +89
WebMatrix.WebData.SimpleMembershipProvider.CreateT ablesIfNeeded() +59
WebMatrix.WebData.WebSecurity.InitializeMembership Provider(SimpleMembershipProvider simpleMembership, DatabaseConnectionInfo connect, String userTableName, String userIdColumn, String userNameColumn, Boolean createTables) +91
WebMatrix.WebData.WebSecurity.InitializeProviders( DatabaseConnectionInfo connect, String userTableName, String userIdColumn, String userNameColumn, Boolean autoCreateTables) +85
MyMovies.MvcApplication.Application_Start() +440
D'après ce que j'ai pu lire, il semble que ça provienne du fait que ma connectionString n'est pas adaptée à l'utilisation d'Entity Framework.
Le problème, c'est que dans mon fichier web.config, j'ai 3 connectionString différentes maintenant.
Je ne sais laquelle changer et comment la changer.

Merci par avance

_G4ry
01/11/2012, 21h17
Bonsoir

J'essaie de publier une application sur mon hébergement avec WebDeploy sous visual studio 2012.

J'utilise les paramètres suivants:

Service Url: winweb8.ovh.net:8172
Site/application: mymoviecollection.fr
Utilisateur: MUTU\***
Destination Url: mymoviecollection.fr

La validation de la connexion passe bien.

Dans mon fichier web.config, ma connectionString est la suivante:

Lors du déploiement, j'obtiens l'erreur suivante :

Erreur 1 Échec de la tâche de déploiement Web. ((01/11/2012 21:14:35) Une erreur s'est produite lors du traitement de la demande sur l'ordinateur distant.)

(01/11/2012 21:14:35) Une erreur s'est produite lors du traitement de la demande sur l'ordinateur distant.
Un problème s'est produit sur le serveur lors du traitement de la demande. Contactez l'administrateur du serveur pour plus d'informations.
Le message n'est pas très détaillé. Du coup, je ne sais pas trop quoi faire.

Merci par avance pour votre aide