Ich verwende WinHost.com, um meine Website zu hosten. Das SQL-Datenbank- / Mitgliedschaftssystem funktioniert auf meinem lokalen Computer einwandfrei, aber beim Hochladen auf den Server funktioniert es nicht. Ich habe alle Schritte korrekt ausgeführt. Und ich habe den Support für meinen Service kontaktiert, aber es ist über 2 Wochen her und keine Antwort.
Ich erhalte immer wieder diesen Fehler, wenn ich versuche, mich anzumelden oder einen neuen Benutzer auf meiner Mitgliederseite auf meiner Website zu registrieren.
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
Kann mir bitte jemand sagen, warum dieser Fehler aufgetreten ist (offensichtlich kann er nichts finden ...) und wie ich ihn beheben kann?
Danke euch allen
Bael
sql
sql-server
stored-procedures
jay_t55
quelle
quelle
Antworten:
aspnet_regsql.exe
Sind Sie gegen den SQL Server von WinHost.com gelaufen?Wenn Sie nicht wissen, wo Sie den obigen Befehl ausführen sollen, können Sie einfach die ausführbare Datei 'aspnet_regsql.exe' ausführen.
Um diese Datei zu finden, öffnen Sie Ihre RUN-Befehlsbox, indem Sie die Windows-Taste + r drücken und den folgenden Befehl
%windir%\Microsoft.NET\Framework\v4.0.30319
eingeben. Drücken Sie die Eingabetaste und suchen Sie die Datei 'aspnet_regsql.exe'. Es wird ein Assistent geöffnet, dem Sie folgen können, um diesen Fehler zu beheben.Dieser Fehler tritt meistens auf, wenn Sie Rollen in Ihrem asp.net mvc-Projekt nicht aktiviert haben. Beim Starten, bevor die Aspnet-Identitätstabelle automatisch erstellt wurde.
Sie müssen sicherstellen, dass Sie dies ausführen, damit die Tabellen und Objekte auf dem SQL Server von WinHost.com erstellt werden.
quelle
Öffnen Sie die Visual Studio-Eingabeaufforderung im Ordner Visual Studio-Tools im Startmenü und geben Sie ein
aspnet_regsql
Folgen Sie dem Assistenten, um die Datenbank für asp.net-Mitgliedschafts- und Rollenanbieter zu registrieren.
quelle
Ich habe das schon mal gesehen. Die von Ihnen verwendete Datenbank verfügt nicht über die erforderlichen Datenbankelemente für die Funktionen Mitgliedschaft, Rollenverwaltung und Profil. Sie haben also mehrere Möglichkeiten:
quelle
Ich habe das gleiche Problem - ich kopiere / füge connectionString aus
SQL Object manager
Visual Studio ein und vergesse zu tippenInitial Catalog=YourDatabaseName
.quelle
Initial Catalog=master
stattInitial Catalog=YourDatabaseName
Überprüfen Sie das Schema, zu dem die gespeicherte Prozedur auf Ihrem Host gehört. Möglicherweise befindet es sich nicht im "dbo" -Schema.
Wenn es sich beispielsweise in SomeOtherSchema befindet, muss Ihr Aufruf "SomeOtherSchema.aspnet_CheckSchemaVersion" lauten.
quelle
Ich hatte genau den gleichen Fehler, als ich aktiviert hatte und
<roleManager>
glaubte, ich würde ASP.NET Identity 2 aktivieren. Sie sind nicht gleich! Das hat<roleManager>
eine alte Version des Identitätsmanagements aktiviert, die eine andere Tabellenstruktur als ASP.NET Identity 2 verwendet (die übrigens nicht "aktiviert" werden muss - sie ist einfach da).Wenn Sie absichtlich den alten Rollenmanager verwenden und dennoch den Fehler erhalten, wird möglicherweise die Standardeinstellung
localdb
anstelle Ihrer Datenbank angezeigt. In diesem Fall können Sie die Änderung so ändern<roleManager>
, dass sie auf eine beliebige Verbindungszeichenfolge verweist:Wenn Sie ASP.NET Identity 2 verwenden möchten, finden Sie hier einen Artikel dazu:
http://johnatten.com/2014/04/20/asp-net-mvc-and-identity-2-0-understanding-the- Grundlagen /
quelle
Kurz gesagt, Sie sollten die DLL des Aspnet-Anbieters mit dem SQL-Benutzernamen neu kompilieren, den Sie von Ihrem Hosting erhalten haben.
Eine andere Option, die einfacher zu versuchen ist, besteht darin, die dbo-Referenzen in Ihrer lokalen SQL Server-Datenbank durch den Benutzernamen Ihrer Hosting-Datenbank zu ersetzen und dann Ihre MDF-Datei hochzuladen und anzuhängen.
Ich hoffe es hilft
Thomas
quelle