Saya menggunakan WinHost.com untuk meng-host situs saya. Database SQL / sistem keanggotaan bekerja dengan sempurna di komputer lokal saya, tetapi ketika diunggah ke server itu tidak berfungsi. Saya telah mengikuti semua langkah dengan benar. Dan saya telah menghubungi dukungan untuk layanan saya tetapi sudah lebih dari 2 minggu dan tidak ada jawaban.
Saya terus mendapatkan kesalahan ini ketika saya mencoba masuk atau mendaftarkan pengguna baru di halaman keanggotaan saya di situs saya.
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
Adakah yang bisa memberi tahu saya mengapa kesalahan ini terjadi (jelas tidak dapat menemukan sesuatu ...), dan bagaimana saya bisa memperbaikinya?
Terima kasih semua
Bael
sql
sql-server
stored-procedures
jay_t55
sumber
sumber
Jawaban:
Apakah Anda menjalankan
aspnet_regsql.exe
server sql WinHost.com?Jika Anda tidak tahu di mana harus menjalankan perintah di atas maka Anda cukup menjalankan file yang dapat dieksekusi 'aspnet_regsql.exe'.
Untuk menemukan file ini, buka Kotak Perintah RUN Anda dengan menekan Tombol Windows + r dan letakkan perintah di bawah ini
%windir%\Microsoft.NET\Framework\v4.0.30319
dan Tekan enter lalu cari file 'aspnet_regsql.exe'. Ini akan membuka wizard yang dapat Anda ikuti untuk mengatasi kesalahan ini.Kesalahan ini sebagian besar terjadi ketika Anda tidak mengaktifkan Peran dalam proyek mvc asp.net Anda Saat memulai sebelum tabel identitas aspnet dibuat secara otomatis.
Anda harus memastikan bahwa Anda menjalankan ini sehingga tabel dan objek dibuat pada server SQL WinHost.com.
sumber
Buka command prompt visual studio dari folder alat Visual studio dari menu mulai dan ketik
aspnet_regsql
dan ikuti wizard untuk mendaftarkan database untuk keanggotaan asp.net dan penyedia peran.
sumber
Saya pernah melihat ini sebelumnya. Database yang Anda gunakan tidak memiliki elemen database yang diperlukan untuk fitur keanggotaan, manajemen peran, dan profil. Jadi, Anda punya beberapa opsi:
sumber
Saya memiliki masalah yang sama - saya menyalin / menempel connectionString dari
SQL Object manager
dalam Visual Studio dan lupa mengetikInitial Catalog=YourDatabaseName
.sumber
Initial Catalog=master
bukannyaInitial Catalog=YourDatabaseName
Periksa skema tempat prosedur tersimpan milik host Anda - bisa jadi tidak ada dalam skema "dbo".
misalnya jika dalam SomeOtherSchema, panggilan Anda harus "SomeOtherSchema.aspnet_CheckSchemaVersion"
sumber
Saya mengalami kesalahan yang persis sama ketika saya mengaktifkannya dengan
<roleManager>
keyakinan bahwa saya mengaktifkan ASP.NET Identity 2. Mereka tidak sama! The<roleManager>
diaktifkan versi lama manajemen identitas yang menggunakan struktur tabel yang berbeda untuk ASP.NET Identitas 2 (yang tidak perlu "memungkinkan" dengan cara - itu hanya ada).Jika Anda sengaja menggunakan role-manager lama dan masih mendapatkan kesalahan, Anda mungkin melihat default dan
localdb
bukan database Anda, dalam hal ini Anda dapat mengubah<roleManager>
untuk menunjuk ke string koneksi apa pun yang Anda inginkan:Jika Anda setelah menggunakan ASP.NET Identity 2, berikut adalah artikel tentangnya:
http://johnatten.com/2014/04/20/asp-net-mvc-and-identity-2-0-understanding-the- dasar /
sumber
Singkatnya Anda harus mengkompilasi ulang dll penyedia aspnet menggunakan nama pengguna sql yang Anda tetapkan dari hosting Anda.
Pilihan lain, pheraps yang lebih sederhana untuk dicoba, adalah mengganti referensi dbo di database sql server lokal Anda dengan nama pengguna database hosting Anda, lalu unggah dan lampirkan file mdf Anda.
Semoga membantu
Thomas
sumber