我开发了一个带有实体框架和MySQL的ASP MVC 5应用程序。 在当地我运行成功。但是当我搬到托管并运行它时抛出异常。
System.Data.Entity.Core.ProviderIncompatibleException:从数据库获取提供程序信息时发生错误。这可能是由实体框架使用不正确的连接字符串引起的。检查内部异常以获取详细信息,并确保连接字符串正确。 ---> System.Data.Entity.Core.ProviderIncompatibleException:提供程序未返回ProviderManifestToken字符串。 ---> MySql.Data.MySqlClient.MySqlException:无法连接到任何指定的MySQL主机。 at MySql.Data.MySqlClient.NativeDriver.Open()at MySql.Data.MySqlClient.Driver.Open()at MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)at MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection() at MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()at MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()at MySql.Data.MySqlClient.MySqlPool.GetConnection()at MySql.Data.MySqlClient.MySqlConnection.Open()at MySql System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection连接)中的.Data.MySqlClient.MySqlProviderServices.GetDbProviderManifestToken(DbConnection连接)---内部异常堆栈跟踪结束---在System.Data.Entity.Core System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices providerServices,DbConnection连接)中的.Common.DbProviderServices.GetProviderManifestToken(DbConnection连接)---内部异常堆栈跟踪结束---在System.Da System.Collections.Concurrent.ConcurrentDictionary`2上的System.Data.Entity.Infrastructure.DefaultManifestTokenResolver。<> c__DisplayClass1.b__0(Tuple`3 k)中的ta.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices providerServices,DbConnection连接)。 .GetOrAdd(TKey key,Func`2 valueFactory)在System.Data.Entity.Infrastructure.DefaultManifestTokenResolver.ResolveManifestToken(DbConnection连接)System.Data.Entity.Utilities.DbConnectionExtensions.GetProviderInfo(DbConnection连接,DbProviderManifest& systemManifest。在System.Data.Entity.Eternal中的System.Data.Entity.Inter.LaMn中,System.Data.EntityModel.LetMetl。(。在System.Data.Entity.Internal.LazyInternalContext.InitializeContext()at System.Data.Entity.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()at System System.Linq.Queryable.FirstOrDefault [TSource]上System.Data.Entity.Infrastructure.DbQuery`1.System.Linq.IQueryable.get_Provider()的.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()( IQderyable`1 source,Expression`1谓词),位于Mdt.Business.CommonRepository.LoginAdmin(String username,String passwod),位于Mdt.BackendWeb.Controllers.LoginController.Index(LoginAdminModel model,String returnUrl)
但我上传到另一个托管,它运行正常。
我不知道为什么。
请帮帮我。
答案 0 :(得分:0)
与我的托管服务提供商交谈后。他们说他们被外部互联网(来自越南,越南,我在越南的托管服务提供商)的阻止请求,但我的数据库托管在美国服务器,因为他们的服务器一直在攻击。 :((