尝试在生产环境中运行代码时,出现以下异常:
服务器在处理请求时遇到错误。异常消息为“指定的架构无效。错误:(0,0):错误0175:变量名称为'MySql.Data.MySqlClient'的ADO.NET提供程序未在计算机或应用程序配置文件中注册,或者无法加载。有关详细信息,请参见内部异常。有关更多详细信息,请参见服务器日志。异常堆栈跟踪为: 在System.Data.Entity.Core.Metadata.Edm.StoreItemCollection.Loader.ThrowOnNonWarningErrors()在System.Data.Entity.Core.Metadata.Edm.StoreItemCollection.Loader.LoadItems(IEnumerable
1 xmlReaders, IEnumerable
1 sourceFilePaths) .Data.Entity.Core.Metadata.Edm.StoreItemCollection.Init(IEnumerable1 xmlReaders, IEnumerable
1 filePaths,布尔throwOnError,IDbDependencyResolver解析器,DbProviderManifest&ProviderManifest,DbProviderFactory&ProviderFactory,String&providerInvariantName,String&providerManifestToken,MemoizerFunction 2和SystemdC。 Data.Entity.Core.Metadata.Edm.StoreItemCollection..ctor(IEnumerable1 xmlReaders) at System.Data.Entity.Utilities.XDocumentExtensions.GetStorageMappingItemCollection(XDocument model, DbProviderInfo& providerInfo) at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(XDocument sourceModel, XDocument targetModel, Lazy
1修改位于System.Data.Entity.Internal.InternalContext.ModelMatches(VersionedModel model)处的CommandTreeGenerator,MigrationSqlGenerator migrationSqlGenerator,String sourceModelVersion,String targetModelVersion RAWCT.PSS.WebServices.Database.SQL.PSSConte上的System.Data.Entity.Internal.InternalContext.CompatibleWithModel(Boolean throwIfNoMetadata,DatabaseExistenceState existState) E:\ OneDrive \ Projects \ PSS \ RAWCT.PSS.WebServices \ RAWCT.PSS.WebServices \ Database \ SQL \ PSSContext.cs中的xt..ctor():RAWCT.PSS.WebServices.Controllers.AccountController.CreateAccount的第52行(Int32 payrollID,字符串用户名,字符串密码,字符串firstName,字符串lastName,字符串phoneNumber,布尔值批准,布尔jobLog,布尔photoApp)在E:\ OneDrive \ Projects \ PSS \ RAWS.PSS.WebServices \ RAWCT.PSS.WebServices \ Controllers \ AccountController.cs:RAWCT.PSS.WebServices.Account.NewAccount上的第35行(E:\中的String payrollID,String用户名,String密码,String firstName,String lastName,String phoneNumber,已批准的字符串,String jobLog,String photoApp) OneDrive \ Projects \ PSS \ RAWCT.PSS.WebServices \ RAWCT.PSS.WebServices \ Account.svc.cs:SyncInvokeNewAccount(Object,Object [],Object []的第58行位于System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(在System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRp)处的对象实例,对象[]输入,对象[]&输出) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&rpc)处的System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc&rpc)处的System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
问题是我完全没有将MySQL用于该项目,仅是MSSQL,所以我不确定它从哪里得到?在测试服务器上可以正常工作。这是我的web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<services>
<service behaviorConfiguration="ServiceBehaviour" name="RAWCT.PSS.WebServices.Account">
<endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" name="AccountService" contract="RAWCT.PSS.WebServices.Interfaces.IAccount" />
</service>
<service behaviorConfiguration="ServiceBehaviour" name="RAWCT.PSS.WebServices.JobLogs">
<endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" name="JobLogsService" contract="RAWCT.PSS.WebServices.Interfaces.IJobLogs" />
</service>
<service behaviorConfiguration="ServiceBehaviour" name="RAWCT.PSS.WebServices.JobSite">
<endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" name="JobSiteService" contract="RAWCT.PSS.WebServices.Interfaces.IJobSite" />
</service>
<service behaviorConfiguration="ServiceBehaviour" name="RAWCT.PSS.WebServices.TimeClock">
<endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" name="TimeClockService" contract="RAWCT.PSS.WebServices.Interfaces.ITimeClock" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="web">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="ServiceBehaviour">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
<behavior name="">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
<system.web>
<compilation debug="true" targetFramework="4.7" />
<customErrors mode="Off" />
</system.web>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient" />
</DbProviderFactories>
</system.data>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-4.5.0.0" newVersion="11.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
任何帮助将不胜感激。