Je travaille sur ce sujet depuis un certain temps et je ne sais plus quoi faire .. donc voici le problème.Windows Azure Web Service, ne parvient pas à se connecter à la base de données SQL
J'ai un service Web Azure, qui fonctionne parfaitement localement. Il doit se connecter à une Azure base de données SQL (j'utilise la même ConnectionString pour le débogage et d'azur .. donc il doit être à droite)
En utilisant IntelliTrace, je trouve ces erreurs:
Requested registry access is not allowed.
System.IO.FileNotFoundException Could not load file or assembly 'EntityFramework, Version=6.0.0.0, Culture=Neutral....
System.Data.Entity.Core.ProviderIncompatibleException
System.Data.SqlClient.SqlException A network-related or instance-specific error occured while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct... (This about 50 times)
System.Threading.WaitHandleCannotBeOpenedException No handle of the given name exists.
System.Security.SecurityException Requested registry access is not allowed
Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironmentException error
System.Threading.WaitHandleCannotBeOpenedException No handle of the given name exists.
(pile d'exception, haut le plus récent, le plus ancien Bott)
Dans mon web.config je configurer EF et ConnectionString comme ceci:
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="EntityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework" requirePermission="false"/>
</configSections>
<connectionStrings>
<add name="DefaultConnection" connectionString="Server=SERVER.database.windows.net;Database=LeagueMetaDatabase;User [email protected];Password=PW;Trusted_Connection=False;Encrypt=True;" providerName="System.Data.SqlClient"/>
</connectionStrings>
I également désactivé "version spécifique" pour l'assemblage EF et Acti "Copie locale". J'ai vérifié dans le dossier bin du service sur le serveur, la DLL est là.
Le service utilise beaucoup de async, mais comme déjà dit cela fonctionne localy .. J'ai également installé .NET sur le serveur 4.5.1 juste pour être sûr que le problème n'est pas
// Modifier Première de tout, merci pour toute l'aide jusqu'à présent!
J'ai essayé de réduire le problème .. reconstruire le projet de trou et essayer de trouver ce qui ne fonctionne pas. Il semble que les tâches asynchrones ne peuvent pas lire ConnectionString dans Web.config sur Azure Server Cloud. Dans l'émulateur, cela fonctionne. J'ai codé en dur le ConnectionString dans le Contexte et il fonctionne de cette façon. Quelqu'un peut me dire ce qui crée ce comportement et comment je peux le remettre dans le Web.config?
comment allez-vous déployer vers Azure? Si vous utilisez la méthode "publish" depuis VS, vous pouvez vérifier si les chaînes de connexion sont correctement configurées. Je me souviens que Visual Studio a remplacé les chaînes de connexion du développement à la production, vous pouvez vérifier cela. Aussi, je ne recommande pas d'utiliser tout ce qui n'est pas stable sur Azure - j'ai aussi eu beaucoup de problèmes avec ça (et je vois que vous utilisez EF 6). – VsMaX
Que contient la balise dans web.config? Quel FE fait-il référence? –
sunil
Je n'ai pas de balise d'exécution dans mon web.config du service –