Estou usando o WinHost.com para hospedar meu site. O banco de dados SQL / sistema de associação funciona perfeitamente no meu computador local, mas quando carregado para o servidor, ele não funciona. Segui todos os passos corretamente. E entrei em contato com o suporte para o meu serviço, mas já se passaram mais de 2 semanas e nenhuma resposta.
Continuo recebendo esse erro quando tento fazer o login ou registrar um novo usuário na página de membro do meu site.
Server Error in '/' Application.
--------------------------------------------------------------------------------
Could not find stored procedure 'dbo.aspnet_CheckSchemaVersion'.
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: Could not find stored procedure 'dbo.aspnet_CheckSchemaVersion'.
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): Could not find stored procedure 'dbo.aspnet_CheckSchemaVersion'.]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +1953274
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +4849707
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +194
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2392
System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +204
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +954
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +162
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) +175
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +137
System.Web.Util.SecUtility.CheckSchemaVersion(ProviderBase provider, SqlConnection connection, String[] features, String version, Int32& schemaVersionCheck) +378
System.Web.Security.SqlMembershipProvider.CheckSchemaVersion(SqlConnection connection) +89
System.Web.Security.SqlMembershipProvider.GetPasswordWithFormat(String username, Boolean updateLastLoginActivityDate, Int32& status, String& password, Int32& passwordFormat, String& passwordSalt, Int32& failedPasswordAttemptCount, Int32& failedPasswordAnswerAttemptCount, Boolean& isApproved, DateTime& lastLoginDate, DateTime& lastActivityDate) +815
System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved, String& salt, Int32& passwordFormat) +105
System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved) +42
System.Web.Security.SqlMembershipProvider.ValidateUser(String username, String password) +78
System.Web.UI.WebControls.Login.AuthenticateUsingMembershipProvider(AuthenticateEventArgs e) +60
System.Web.UI.WebControls.Login.OnAuthenticate(AuthenticateEventArgs e) +119
System.Web.UI.WebControls.Login.AttemptLogin() +115
System.Web.UI.WebControls.Login.OnBubbleEvent(Object source, EventArgs e) +101
System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +37
System.Web.UI.WebControls.Button.OnCommand(CommandEventArgs e) +118
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +166
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:2.0.50727.4200; ASP.NET Version:2.0.50727.4016
Alguém pode me dizer por que esse erro ocorreu (obviamente, ele não pode encontrar algo ...), e como posso corrigi-lo?
Obrigado a todos
Bael
sql
sql-server
stored-procedures
Jay_t55
fonte
fonte
Respostas:
Você
aspnet_regsql.exe
executou no servidor sql do WinHost.com?Se você não sabe onde executar o comando acima, pode simplesmente executar o arquivo executável 'aspnet_regsql.exe'.
Para localizar este arquivo, abra sua caixa de comando RUN pressionando a tecla Windows + r e coloque o comando abaixo nela
%windir%\Microsoft.NET\Framework\v4.0.30319
e pressione Enter e, em seguida, encontre o arquivo 'aspnet_regsql.exe'. Ele abrirá um assistente que você pode seguir para resolver esse erro.Este erro ocorre principalmente quando você não habilitou Funções em seu projeto asp.net mvc No início, antes da criação automática da tabela de identidade aspnet.
Você precisará certificar-se de executar isso para que as tabelas e objetos sejam criados no servidor SQL do WinHost.com.
fonte
Abra o prompt de comando do Visual Studio na pasta de ferramentas do Visual studio no menu iniciar e digite
aspnet_regsql
e siga o assistente para registrar o banco de dados para membros do asp.net e provedores de função.
fonte
Eu já vi isso antes. O banco de dados que você está usando não possui os elementos de banco de dados necessários para os recursos de associação, gerenciamento de funções e perfil. Então, você tem algumas opções:
fonte
Tenho o mesmo problema - copio / colo connectionString do
SQL Object manager
Visual Studio e esqueço de digitarInitial Catalog=YourDatabaseName
.fonte
Initial Catalog=master
vez deInitial Catalog=YourDatabaseName
Verifique o esquema ao qual o procedimento armazenado pertence em seu host - pode ser que ele não esteja no esquema "dbo".
por exemplo, se estiver em SomeOtherSchema, sua chamada deve ser "SomeOtherSchema.aspnet_CheckSchemaVersion"
fonte
Eu tive exatamente o mesmo erro quando habilitei
<roleManager>
acreditar que estava habilitando o ASP.NET Identity 2. Eles não são os mesmos! O<roleManager>
habilitou uma versão antiga de gerenciamento de identidade que usa uma estrutura de tabela diferente do ASP.NET Identity 2 (que não precisa ser "habilitado" - está apenas lá).Se você estiver usando intencionalmente o gerenciador de funções antigo e ainda receber o erro, pode estar olhando para o padrão em
localdb
vez do banco de dados, caso em que pode modificar<roleManager>
para apontar para qualquer string de conexão que desejar:Se você deseja usar o ASP.NET Identity 2, aqui está um artigo sobre ele:
http://johnatten.com/2014/04/20/asp-net-mvc-and-identity-2-0-understanding-the- Fundamentos/
fonte
Resumindo, você deve recompilar a dll do provedor aspnet usando o nome de usuário sql que lhe foi atribuído em sua hospedagem.
Outra opção, mais simples de tentar com o pheraps, é substituir as referências dbo no banco de dados do servidor sql local pelo nome de usuário do banco de dados de hospedagem e, em seguida, fazer upload e anexar o arquivo mdf.
Espero que ajude
Thomas
fonte