Web.config et connectionStrings .NET Framework 4.7 Visual Studio 2017 pro C#
Bonjour à tous,
Je viens de mettre au point mon site de vente selon le tutoriel suivant :
mvc-music-store
Que l'on peut retrouver sur Microsoft ici :
mvc-music-store
J'ai donc créé un nouveau projet à partir de Visual Studio 2017 et le résultat est super fonctionnel, donc tout va bien.
J'envisage maintenant de le développer sur mon site existant avec le même Framework 4.7 (qui fonctionne déjà avec Mysql) et là au niveau du HomeController j'obtiens le message suivant :
Citation:
System.Data.Entity.Core.ProviderIncompatibleException :
'Le fournisseur n'a pas renvoyé la chaîne ProviderManifestToken.'
Code:
1 2 3 4 5 6 7 8 9 10
| private List<Album> GetTopSellingAlbums(int count)
{
// Regroupe les détails de la commande par album et
// renvoie les albums avec le nombre le plus élevé
return storeDB.Albums
.OrderByDescending(a => a.OrderDetails.Count())
.Take(count)
.ToList();
} |
J'ai bien dans mon Global.asax.cs le lancement des deux Db...
Code:
1 2 3 4 5
| protected void Application_Start()
{
DbConfiguration.SetConfiguration(new MySqlEFConfiguration()); // fait référence à Mysql
Database.SetInitializer(new SampleData()); |
Et ceci dans le Web.confg :
Code:
1 2 3 4 5 6 7 8 9 10
| <connectionStrings>
<!-- ******** Serveur de production ******** -->
<add name="Site_LsB_MVCEntities" providerName="System.Data.SqlServerCe.4.0" connectionString="Data Source=|DataDirectory|Site_LsB_MVC.sdf;" />
<add name="DefaultConnection" providerName="MySql.Data.MySqlClient" connectionString="server=localhost;port=***;database=_Bdd_MVC_Photo;userid=Bdd_MVC_Photo;password=****;persistsecurityinfo=True" />
<add name="TypeVisiteur" providerName="MySql.Data.MySqlClient" connectionString="server=localhost;port=****;database=_Visiteurs;userid=Bdd_MVC_Visiteur;password=****;persistsecurityinfo=True" />
</connectionStrings> |
J'ai testé ceci sans résultat :
Code:
1 2 3
| <add name="Site_LsB_MVCEntities"
connectionString="Data Source=.;Initial Catalog=Site_LsB_MVC;Integrated Security=SSPI"
providerName="System.Data.SqlClient"/> |
Les deux config séparément fonctionne bien, mais il y a un souci lorsqu’elles sont réunies...
Comment résoudre cette problématique, serait-ce à cause du Provider ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
<parameters>
<parameter value="System.Data.SqlServerCe.4.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.10.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
<provider invariantName="System.Data.SqlServerCe.4.0" type="System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact" />
</providers>
</entityFramework> |
Pour le coup j’ai besoin d’un pro en la matière.
Par avance, merci.