无法从Azure网站访问Azure数据库服务器

时间:2014-08-09 16:17:27

标签: c# asp.net-mvc-4 azure azure-sql-database

我使用Visual Studio 2013 Web Express创建了一个MVC Web应用程序。我在Azure中为我的计算机启用了防火墙规则,我可以从本地计算机连接和远程调试我的网站。我有用户SQL Server对象资源管理器来确认我正在连接到我的Azure数据库并且应用程序运行正常。

但是,当我将应用程序部署到Azure时,我收到以下连接错误。我已经检查过以确保该网站将Azure数据库作为链接资源。我使用FTP连接到网站并确认我的web.config中的连接字符串是否正确。

这似乎是我的Azure设置中的一些配置问题,但我不知道还有什么要检查。任何建议都表示赞赏。

---------------收到错误(用户名和跟踪ID已更改)---------------------- ----

  

' /'中的服务器错误应用

     

用户' MyUserName'登录失败。此会话已分配一个   跟踪ID为&x; xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'。提供这个   在需要帮助时将ID跟踪到客户支持   描述:执行期间发生未处理的异常   当前的网络请求。请查看堆栈跟踪了解更多信息   有关错误的信息以及它在代码中的起源。

     

异常详细信息:System.Data.SqlClient.SqlException:登录失败   对于用户' MyUserName'。已为此会话分配了跟踪ID   ' XXXXXXXXXXXX-XXXXXXXX-XXXXXXXXXXXX&#39 ;.提供此跟踪ID   在您需要帮助时提供客户支持。

     

来源错误:

     

执行期间生成了未处理的异常   当前的网络请求。有关的来源和位置的信息   可以使用下面的异常堆栈跟踪来识别异常。

     

堆栈追踪:

[SqlException (0x80131904): Login failed for user 'MyUserName'.
This session has been assigned a tracing ID of 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'.  Provide this tracing ID to
     

当您需要帮助时,客户支持。]          System.Data.SqlClient.SqlInternalConnection.OnError(SQLEXCEPTION   exception,Boolean breakConnection,Action 1 wrapCloseInAction) +5341687 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +546 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +1693 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +69 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +30 System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover) +317 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout) +892 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance) +311 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData) +646 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) +278 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) +38 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) +732 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) +85 System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) +1057 System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource 1 retry,DbConnectionOptions   userOptions,DbConnectionInternal&amp;连接)+78          System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(的DbConnection   owningConnection,TaskCompletionSource 1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) +196 System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource 1次重试,DbConnectionOptions userOptions)+146          System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(的DbConnection   outerConnection,DbConnectionFactory connectionFactory,   TaskCompletionSource 1 retry, DbConnectionOptions userOptions) +16 System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource 1   重试)+94          System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource 1 retry) +110 System.Data.SqlClient.SqlConnection.Open() +96 System.Data.Entity.SqlServer.<>c__DisplayClass2f.<UsingConnection>b__2d() +73 System.Data.Entity.SqlServer.<>c__DisplayClass1.<Execute>b__0() +10 System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute(Func 1   手术)+189          System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute(动作   操作)+78          System.Data.Entity.SqlServer.SqlProviderServices.UsingConnection(的DbConnection   sqlConnection,Action 1 act) +229 System.Data.Entity.SqlServer.SqlProviderServices.UsingMasterConnection(DbConnection sqlConnection, Action 1 act)+376          System.Data.Entity.SqlServer.SqlProviderServices.GetDbProviderManifestToken(的DbConnection   连接)+201          System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(的DbConnection   连接)+87

[ProviderIncompatibleException: The provider did not return a ProviderManifestToken string.]
   System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection
     

连接)+271          System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices   providerServices,DbConnection连接)+33

[ProviderIncompatibleException: An error occurred while getting provider information from the database. This can be caused by Entity
     

使用不正确的连接字符串的框架。检查内心   详细信息的例外情况并确保连接字符串是   正确。]          System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices   providerServices,DbConnection连接)+193          System.Data.Entity.Infrastructure&LT;&GT; c__DisplayClass1.b__0(元组3 k) +32 System.Collections.Concurrent.ConcurrentDictionary 2.GetOrAdd(TKEY的   key,Func 2 valueFactory) +72 System.Data.Entity.Infrastructure.DefaultManifestTokenResolver.ResolveManifestToken(DbConnection connection) +180 System.Data.Entity.Utilities.DbConnectionExtensions.GetProviderInfo(DbConnection connection, DbProviderManifest& providerManifest) +56 System.Data.Entity.DbModelBuilder.Build(DbConnection providerConnection) +43 System.Data.Entity.Internal.LazyInternalContext.CreateModel(LazyInternalContext internalContext) +62 System.Data.Entity.Internal.RetryLazy 2.GetValue(TInput input)+123          System.Data.Entity.Internal.LazyInternalContext.InitializeContext()   +611          System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(类型   entityType)+18          System.Data.Entity.Internal.Linq.InternalSet 1.Initialize() +53 System.Data.Entity.Internal.Linq.InternalSet 1.get_InternalContext()   +15          System.Data.Entity.Infrastructure.DbQuery 1.System.Linq.IQueryable.get_Provider() +38 System.Linq.Queryable.Where(IQueryable 1个源,表达式1 predicate) +63 Microsoft.AspNet.Identity.EntityFramework.UserStore 1.FindByNameAsync(String   userName)+616          Microsoft.AspNet.Identity.d__d.MoveNext()+ 102          System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)+93          System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)+52          Microsoft.AspNet.Identity.d__15.MoveNext()+243          System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)+93          System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)+52          Berkemeyer.DocumentEngine.Web.Controllers.d__2.MoveNext()+244          System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)+93          System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)+52          lambda_method(Closure,Task)+23          System.Threading.Tasks.TaskHelpersExtensions.ThrowIfFaulted(任务任务)   +33          System.Web.Mvc.Async.TaskAsyncActionDescriptor.EndExecute(IAsyncResult的   asyncResult)+68          System.Web.Mvc.Async&LT;&GT; c__DisplayClass34.b__33(IAsyncResult的   asyncResult)+16          System.Web.Mvc.Async.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) +10 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+49          System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult的   asyncResult)+32          System.Web.Mvc.Async.AsyncInvocationWithFilters.b__3c()   +50          System.Web.Mvc.Async&LT;&GT; c__DisplayClass45.b__3e()   +225          System.Web.Mvc.Async。&lt;&gt; c__DisplayClass30.b__2f(IAsyncResult asyncResult)+10          System.Web.Mvc.Async.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) +10 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+49          System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult的   asyncResult)+34          System.Web.Mvc.Async&LT;&GT; c__DisplayClass28.b__19()   +26          System.Web.Mvc.Async&LT;&GT; c__DisplayClass1e.b__1b(IAsyncResult的   asyncResult)+100          System.Web.Mvc.Async.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) +10 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+49          System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult的   asyncResult)+27          System.Web.Mvc.Controller.b__1d(IAsyncResult asyncResult,ExecuteCoreState innerState)+13          System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +36 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+54          System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)+39          System.Web.Mvc.Controller.b__15(IAsyncResult asyncResult,Controller controller)+12          System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +28 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+54          System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult)+29          System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult的   asyncResult)+10          System.Web.Mvc.MvcHandler.b__4(IAsyncResult的   asyncResult,ProcessRequestState innerState)+21          System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +36 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+54          System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)+31          System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult的   结果)+9          System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   9651188          System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean&amp; completedSynchronously)+155

     

版本信息:Microsoft .NET Framework版本:4.0.30319;   ASP.NET版本:4.0.30319.36213

1 个答案:

答案 0 :(得分:14)

我自己想出来了。即使web.config具有正确的连接字符串,我在Azure网站的配置设置下找到了“连接字符串”部分,密码错误。在此更正密码修复了我的问题。Azure Connection Strings