2017-04-06 125 views
5

我做了什麼:天青:登錄失敗,用戶

  • 我添加的資源組在Azure上。
  • 添加了以前的資源組的Web服務。
  • 添加SQL Server數據庫與以前的資源組。
  • 從此數據庫檢索生成的連接字符串,並在此處提供用戶名和密碼。
  • 將此連接字符串添加到Web服務中的應用程序設置。
  • 通過Visual Studio發佈應用程序。

問題: 我得到這個錯誤,當我試圖測試這個託管應用程序在蔚藍的,但在我的應用程序正是這種連接字符串一切的本地版本的作品就好了..

Server Error in '/' Application. 

Login failed for user 'USERNAME'. 

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Data.SqlClient.SqlException: Login failed for user 'USERNAME'. 

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. 

Stack Trace: 


[SqlException (0x80131904): Login failed for user 'USERNAME'.] 
    System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling) +1418 
    System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) +470 
    System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) +70 
    System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) +777 
    System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) +114 
    System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) +1637 
    System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) +117 
    System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) +267 
    System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +318 
    System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) +132 
    System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) +246 
    System.Data.SqlClient.SqlConnection.Open() +122 
    System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch(TTarget target, Action`2 operation, TInterceptionContext interceptionContext, Action`3 executing, Action`3 executed) +104 
    System.Data.Entity.Infrastructure.Interception.DbConnectionDispatcher.Open(DbConnection connection, DbInterceptionContext interceptionContext) +509 
    System.Data.Entity.SqlServer.<>c__DisplayClass1.<Execute>b__0() +15 
    System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute(Func`1 operation) +238 
    System.Data.Entity.SqlServer.SqlProviderServices.UsingConnection(DbConnection sqlConnection, Action`1 act) +331 
    System.Data.Entity.SqlServer.SqlProviderServices.UsingMasterConnection(DbConnection sqlConnection, Action`1 act) +916 
    System.Data.Entity.SqlServer.SqlProviderServices.GetDbProviderManifestToken(DbConnection connection) +413 
    System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection) +116 

[ProviderIncompatibleException: The provider did not return a ProviderManifestToken string.] 
    System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection) +377 
    System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices providerServices, DbConnection connection) +35 

[ProviderIncompatibleException: An error occurred accessing the database. This usually means that the connection to the database failed. Check that the connection string is correct and that the appropriate DbContext constructor is being used to specify it or find it in the application's config file. See http://go.microsoft.com/fwlink/?LinkId=386386 for information on DbContext and connections. See the inner exception for details of the failure.] 
    System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices providerServices, DbConnection connection) +266 
    System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory) +84 
    System.Data.Entity.Utilities.DbConnectionExtensions.GetProviderInfo(DbConnection connection, DbProviderManifest& providerManifest) +89 
    System.Data.Entity.DbModelBuilder.Build(DbConnection providerConnection) +63 
    System.Data.Entity.Internal.LazyInternalContext.CreateModel(LazyInternalContext internalContext) +91 
    System.Data.Entity.Internal.RetryLazy`2.GetValue(TInput input) +227 
    System.Data.Entity.Internal.LazyInternalContext.InitializeContext() +846 
    Hakon.HamiltonCargo.Web.NinjectWebCommon.InitializeDatabase() +111 
    Hakon.HamiltonCargo.Web.NinjectWebCommon.Start() +124 

[TargetInvocationException: Exception has been thrown by the target of an invocation.] 
    System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0 
    System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) +260 
    System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +146 
    System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +34 
    WebActivatorEx.BaseActivationMethodAttribute.InvokeMethod() +288 
    WebActivatorEx.ActivationManager.RunActivationMethods(Boolean designerMode) +785 
    WebActivatorEx.ActivationManager.RunPreStartMethods(Boolean designerMode) +58 
    WebActivatorEx.ActivationManager.Run() +82 

[InvalidOperationException: The pre-application start initialization method Run on type WebActivatorEx.ActivationManager threw an exception with the following error message: Exception has been thrown by the target of an invocation..] 
    System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore(ICollection`1 methods, Func`1 setHostingEnvironmentCultures) +877 
    System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1 methods) +169 
    System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) +133 
    System.Web.Compilation.BuildManager.ExecutePreAppStart() +176 
    System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +734 

[HttpException (0x80004005): The pre-application start initialization method Run on type WebActivatorEx.ActivationManager threw an exception with the following error message: Exception has been thrown by the target of an invocation..] 
    System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +539 
    System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +125 
    System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +731 

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.1590.0 
+0

嘗試使用此搜索進行搜索ProviderIncompatibleException:訪問數據庫時發生錯誤。這通常意味着與數據庫的連接失敗。檢查連接字符串是否正確,並且正在使用適當的DbContext構造函數來指定它或在應用程序的配置文件中找到它。有關DbContext和連接的信息,請參閱http://go.microsoft.com/fwlink/?LinkId=386386。請參閱內部例外以瞭解失敗的詳細信息。 – TheGameiswar

+0

https://msdn.microsoft.com/en-us/data/jj592674 – TheGameiswar

+0

是否意味着Azure SQL數據庫中的相同連接字符串可以在本地工作?我假設這是一個連接問題,你可以在你的app.config/web.config文件中提供連接字符串相關的配置嗎?此外,請檢查您的Web應用程序的「應用程序設置」下配置的連接字符串中的用戶名和密碼是否可以成功訪問Azure SQL數據庫。 –

回答

2

的問題是Microsoft生成的連接字符串中的兩個鍵。您必須設置爲「Persist Security Info」和「TrustServerCertificate」鍵值:「True」。

+0

不適用於我 – JSON