C# MySQL为代码优先实体框架提供6.4.3.0支持

C# MySQL为代码优先实体框架提供6.4.3.0支持,c#,asp.net,mysql,ef-code-first,C#,Asp.net,Mysql,Ef Code First,我正在服务器中使用sql 6.4.3.0,它返回错误: 'The provider did not return a ProviderManifestToken string.' 但在我的本地,我的sql v-6.4.4.0创建数据库很好,但在我的服务器上没有创建数据库。我的sql提供程序是否支持无数据库的核心第一实体框架 堆栈跟踪 [MySqlException (0x80004005): Unknown database 'globaldb'] MySql.Data.MySqlCl

我正在服务器中使用sql 6.4.3.0,它返回错误:

 'The provider did not return a ProviderManifestToken string.'
但在我的本地,我的sql v-6.4.4.0创建数据库很好,但在我的服务器上没有创建数据库。我的sql提供程序是否支持无数据库的核心第一实体框架

堆栈跟踪

[MySqlException (0x80004005): Unknown database 'globaldb']
   MySql.Data.MySqlClient.MySqlStream.ReadPacket() +196
   MySql.Data.MySqlClient.NativeDriver.AuthenticateSSPI() +22
   MySql.Data.MySqlClient.NativeDriver.AuthenticateNew(Boolean reset) +354
   MySql.Data.MySqlClient.NativeDriver.Authenticate(Boolean reset) +113
   MySql.Data.MySqlClient.NativeDriver.Open() +1034
   MySql.Data.MySqlClient.Driver.Open() +22
   MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings) +218
   MySql.Data.MySqlClient.MySqlPool.GetPooledConnection() +286
   MySql.Data.MySqlClient.MySqlPool.TryToGetDriver() +93
   MySql.Data.MySqlClient.MySqlPool.GetConnection() +65
   MySql.Data.MySqlClient.MySqlConnection.Open() +332
   MySql.Data.MySqlClient.MySqlProviderServices.GetDbProviderManifestToken(DbConnection connection) +36
   System.Data.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection) +26

[ProviderIncompatibleException: The provider did not return a ProviderManifestToken string.]
   System.Data.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection) +170
   System.Data.Entity.ModelConfiguration.Utilities.DbConnectionExtensions.GetProviderInfo(DbConnection connection, DbProviderManifest& providerManifest) +40
   System.Data.Entity.DbModelBuilder.Build(DbConnection providerConnection) +154
   System.Data.Entity.Internal.LazyInternalContext.CreateModel(LazyInternalContext internalContext) +39
   System.Data.Entity.Internal.RetryLazy`2.GetValue(TInput input) +123
   System.Data.Entity.Internal.LazyInternalContext.InitializeContext() +414
   System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) +17
   System.Data.Entity.Internal.Linq.InternalSet`1.Initialize() +58
   System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext() +15
   System.Data.Entity.Infrastructure.DbQuery`1.System.Linq.IQueryable.get_Provider() +37
   System.Linq.Queryable.Select(IQueryable`1 source, Expression`1 selector) +66
   MyBusinessApp.MvcApplication.InitializeDatabase() in C:\APPS\TestShell\mybusinessapp2\Global.asax.cs:59
   MyBusinessApp.MvcApplication.Application_Start() in C:\APPS\TestShell\mybusinessapp2\Global.asax.cs:53

[HttpException (0x80004005): The provider did not return a ProviderManifestToken string.]
   System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +9859725
   System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
   System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
   System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +336
   System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296

[HttpException (0x80004005): The provider did not return a ProviderManifestToken string.]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9873912
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

您的问题最有可能出现在您的my sql 6.4.3.0版本中。在阅读了几篇文章之后,我相信您应该将您使用的版本更新到sql v-6.4.4.0版本,或者下载最新版本,另外最好保持本地版本和开发版本尽可能相似

好的,但这是在服务器中,那么有没有其他解决方案可以在不升级版本的情况下使用相同的解决方案?在本地将其降级为sql 6.4.3.0,并查看它是否编译,在将本地连接器更改为6.4.3.0后,我唯一可以建议的是:在MySql.Data.MySqlClient.MySqlClientFactory.get_MySqlDbProviderServicesInstance()上位于System.Data.Common.DbProviderServices.GetProviderServices(DbConnection连接)的MySql.Data.MySqlClient.MySqlClientFactory.System.IServiceProvider.GetService(类型serviceType)处的System.Data.Common.DbProviderServices.GetProviderServices(DbProviderFactory工厂)在System.Data.Entity.ModelConfiguration.Utilities.DbConnectionExtensions.GetProviderInfo(DbConnection connection,DbProviderManifest&providerManifest)中,您发现了与之前相同的错误,这意味着本地到6.4.3.0的连接器与您所做的不可比。@COLO告诉Yes相同的错误。但我们可以在不安装6.4.4.0的情况下实现这一点,但此链接:。但我升级到了最新版本。