加载程序集时遇到错误' MySql.Data.MySqlClient'将ASP.net应用程序部署到AWS时

时间:2017-04-28 18:08:25

标签: asp.net amazon-web-services elastic-beanstalk amazon-rds

当我将Asp.NET应用程序发布到AWS Elastic Beanstalk时,我收到以下异常消息。该数据库位于Amazon RDS上。应用程序在本地运行时使用本地MySql数据库。我已经在Stack Overflow上尝试了许多建议的答案,但没有一个已经证明可行。在部署.NET应用程序时是否有人遇到此问题?

  

实体框架提供程序类型   ' MySql.Data.MySqlClient.MySqlProviderServices,MySql.Data.Entity.EF6,   Version = 6.9.9.0,Culture = neutral,PublicKeyToken = c5687fc88969c44d'   在ADO.NET提供程序的应用程序配置文件中注册   使用不变名称' MySql.Data.MySqlClient'无法加载。使   确保使用了程序集限定名称并且程序集是   可用于正在运行的应用程序看到   http://go.microsoft.com/fwlink/?LinkId=260882了解更多信息。       at System.Data.Entity.Infrastructure.DependencyResolution.ProviderServicesFactory.GetInstance(String   providerTypeName,String providerInvariantName)

     

at System.Data.Entity.Internal.AppConfig。< .ctor> b__2(ProviderElement)   E)

     

at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()

     

在System.Collections.Generic.List`1..ctor(IEnumerable`1集合)

     

在System.Linq.Enumerable.ToList [TSource](IEnumerable`1 source)

     

在System.Lazy`1.CreateValue()

     

在System.Lazy`1.LazyInitValue()

     

在   System.Data.Entity.Infrastructure.DependencyResolution.AppConfigDependencyResolver.RegisterDbProviderServices()

     

在   System.Data.Entity.Infrastructure.DependencyResolution.AppConfigDependencyResolver.GetServiceFactory(类型   type,String name)

     

at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey)   key,Func`2 valueFactory)

     

在   System.Data.Entity.Infrastructure.DependencyResolution.AppConfigDependencyResolver.GetService(类型   type,Object key)

     

at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()

     

at System.Linq.Enumerable.FirstOrDefault [TSource](IEnumerable`1   来源,Func`2谓词)

     

在   System.Data.Entity.Infrastructure.DependencyResolution.CompositeResolver`2.GetService(类型   type,Object key)

     

在   System.Data.Entity.Infrastructure.DependencyResolution.DbDependencyResolverExtensions.GetService [T](IDbDependencyResolver   分解器)

     

在   System.Data.Entity.DbContext.InitializeLazyInternalContext(IInternalConnection   internalConnection,DbCompiledModel模型)

     

在MichHerbAcumaticaApi.Models.ApplicationDbContext.Create()

     

在   Microsoft.AspNet.Identity.Owin.IdentityFactoryMiddleware`2.d__0.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束---

     

在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)

     

在   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)

     

在   Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContextStage.d__5.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束---

     

在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)

     

在   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)

     

在   Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContext.d__2.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束---

     

在   Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.StageAsyncResult.End(IAsyncResult的   AR)

     

在   System.Web.HttpApplication.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()

     

在System.Web.HttpApplication.ExecuteStep(IExecutionStep步骤,   布尔和放大器; completedSynchronously)

<packages>
  ......
  <package id="MySql.Data" version="6.9.9" targetFramework="net452" />
  <package id="MySql.Data.Entity" version="6.9.9" targetFramework="net452" />
  <package id="MySql.Web" version="6.9.9" targetFramework="net452" />
  .....
</packages>

我试过以下解决方案但没有运气: https://stackoverflow.com/a/40574224/5481661

Entity Framework Provider type could not be loaded?

.NET MySQL Connector Conflicting DbProviderFactories

1 个答案:

答案 0 :(得分:0)

请检查您是否已按照以下mySQL文档中的所有步骤操作。根据文件,它说明了这一点 “除非MySQL Connector / Net与独立的MSI或MySQL安装程序一起安装,它添加了引用,否则请将以下数据提供程序信息插入app.config或web.config文件中:” https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework60.html

希望这有帮助。