У меня есть существующий ASP NET MVC 5
, который использует базу данных AppUsers
для аутентификации пользователей. Он работает уже более года.Недопустимое имя столбца «Дискриминатор»
Сегодня я создал новую демонстрационную программу ASP MVC 5 и установил тег [Authorize]
на конкретную роль [AspNetRoles]
. У меня также есть «AppUsers» connectionString
, созданный в новом приложении web.config
. Это идентичное соединение как первое существующее приложение
При попытке входа в систему с использованием нового приложения, я получаю приведенную ниже ошибку. Я предположил, что я могу использовать базу данных «AppUsers» для аутентификации пользователей с использованием разных приложений. Любое предложение о том, как разрешить это, будет с благодарностью оценено. Я искал в Интернете, но эта ошибка, похоже, имеет много разных причин, но я не видел, как мне кажется, объясняет мою проблему.
Спасибо Майк
Invalid столбец имя 'Дискриминатор'. Описание: Необработанное исключение возникло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения более информации об ошибке и ее месте в коде.
Exception Details: System.Data.SqlClient.SqlException: Invalid column name 'Discriminator'. Source Error: Line 46: if (ModelState.IsValid) Line 47: { Line 48: var user = await UserManager.FindAsync(model.UserName, model.Password); Line 49: if (user != null) Line 50: { Source File: c:\Users\204026705\Documents\MyApps\!!!!VSnet\TestPublishToNewServer\TestPublishToNewServer\Controllers\AccountController.cs
Line: 48
Stack Trace: [SqlException (0x80131904): Invalid column name 'Discriminator'.] System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
+1767866 System.Data.SqlClient.SqlInternalConnection.OnError (SqlException исключение, Boolean breakConnection, действие
1 wrapCloseInAction) +5352418 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +244 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +1691 System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() +61 System.Data.SqlClient.SqlDataReader.get_MetaData() +90 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +365 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds) +1406 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource
1 завершение, Int32 тайм-аут, Task & задача, Boolean asyncWrite) +177 System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String метод) +53 System.Data.SqlClient.SqlCommand.ExecuteReader (поведение CommandBehavior, метод String) +134 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader (CommandBehavior поведение): +41 System.Data.Common.DbCommand. ExecuteReader (поведение CommandBehavior) +10 System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.b__c (DbCommand т, DbCommandInterceptionContext1 c) +66 System.Data.Entity.Infrastructure.Interception.InternalDispatcher
1.Dispatch (TTarget мишени, Func3 operation, TInterceptionContext interceptionContext, Action
3 Исполнительные, Action`3 выполняется) +138 система .Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader (DbCommand команда, DbCommandInterceptionContext interceptionContext) +475 System.Data.Entity. Internal.InterceptableDbCommand.ExecuteDbDataReader (CommandBehavior поведение) +239 System.Data.Common.DbCommand.ExecuteReader (поведение CommandBehavior) +10 System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands (EntityCommand entityCommand, CommandBehavior поведение) +97[EntityCommandExecutionException: An error occurred while executing the command definition. See the inner exception for
детали.] System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands (EntityCommand entityCommand, поведение CommandBehavior) +181 System.Data.Entity.Core.Objects .Internal.ObjectQueryExecutionPlan.Execute (ObjectCont ext context, ObjectParameterCollection parameterValues) +1282 System.Data.Entity.Core.Objects.<> c__DisplayClass7.b__6() +184 System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction (Func операции) +251 System.Data.Entity.Core.Objects.ObjectQuery forMergeOption) +645 System.Data.Entity.Core.Objects.ObjectQuery
1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__0() +68 System.Data.Entity.Internal.LazyEnumerator
1.MoveNext() +68 System.Linq.Enumerable.FirstOrDefault (IEnumerable последовательность) +83 System.Data.Entity.Core.Objects. ELinq.ObjectQueryProvider.ExecuteSingle (IEnumerable1 query, Expression queryRoot) +107 System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.System.Linq.IQueryProvider.Execute(Expression expression) +197 System.Data.Entity.Internal.Linq.DbQueryProvider.Execute(Expression expression) +155 System.Linq.Queryable.FirstOrDefault(IQueryable
1 источник) +251 Microsoft.AspNet.Identity.EntityFramework.UserStore1.FindByNameAsync(String userName) +1175 Microsoft.AspNet.Identity.<FindByNameAsync>d__d.MoveNext() +231 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) +93 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) +52 System.Runtime.CompilerServices.TaskAwaiter
1.GetRes ии() +24 Microsoft.AspNet.Identity.d__15.MoveNext() +540 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (Целевая задача ) +93 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (Целевая задача ): +52 System.Runtime.CompilerServices.TaskAwaiter1.GetResult() +24 TestPublishToNewServer.Controllers.<Login>d__2.MoveNext() in c:\Users\204026705\Documents\MyApps\!!!!VSnet\TestPublishToNewServer\TestPublishToNewServer\Controllers\AccountController.cs:48 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) +93 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) +52 System.Runtime.CompilerServices.TaskAwaiter.GetResult() +21 lambda_method(Closure , Task) +64 System.Threading.Tasks.TaskHelpersExtensions.ThrowIfFaulted(Task task) +64 System.Web.Mvc.Async.TaskAsyncActionDescriptor.EndExecute(IAsyncResult asyncResult) +114 System.Web.Mvc.Async.<>c__DisplayClass34.<BeginInvokeAsynchronousActionMethod>b__33(IAsyncResult asyncResult) +65 System.Web.Mvc.Async.WrappedAsyncResult
1.CallEndDelegate (IAsyncResult AsyncResult) +47 System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +136 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +102 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +49 System.Web.Mvc.Async.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3c() +117 System.Web.Mvc.Async.<>c__DisplayClass45.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3e() +323 System.Web.Mvc.Async.<>c__DisplayClass30.<BeginInvokeActionMethodWithFilters>b__2f(IAsyncResult asyncResult) +44 System.Web.Mvc.Async.WrappedAsyncResult
1.CallEndDelegate (IAsyncResult AsyncResult) +47 System.Web.Mvc. Async.WrappedAsyncResultBase1.End() +136 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +102 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +50 System.Web.Mvc.Async.<>c__DisplayClass28.<BeginInvokeAction>b__19() +72 System.Web.Mvc.Async.<>c__DisplayClass1e.<BeginInvokeAction>b__1b(IAsyncResult asyncResult) +185 System.Web.Mvc.Async.WrappedAsyncResult
1.CallEndDelegate (IAsyncResult asyncResult) +42 Sy stem.Web.Mvc.Async.WrappedAsyncResultBase1.End() +133 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +56 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +40 System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +34 System.Web.Mvc.Async.WrappedAsyncVoid
1.CallEndDelegate (IAsyncResult AsyncResult) +70 System.Web.Mvc.Async.WrappedAsyncResultBase1.End() +139 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +44 System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) +39 System.Web.Mvc.Async.WrappedAsyncVoid
1.CallEndDelegate (IAsyncResult AsyncResult): +62 System.Web.Mvc.Async. WrappedAsyncResultBase1.End() +139 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +39 System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +39 System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__4(IAsyncResult asyncResult, ProcessRequestState innerState) +39 System.Web.Mvc.Async.WrappedAsyncVoid
1.CallEndDelegate (IAsyncResult AsyncResult) +70 System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +139 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult AsyncResult, метка объекта) + 59 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.MvcHandler.EndProcessRequest (IAsyncResult asyncResult) +40 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest (IAsyncResult результат) +38 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9514928 System.Web.HttpApplication. ExecuteStep (IExecutionStep шаг, Boolean & completedSynchronously) +155
посмотреть на это: http://stackoverflow.com/a/24816251/1837329 –
Привет Alundra ... Вы предложение дал мне подсказку, чтобы следовать ... спасибо. Что я сделал после того, как прочитал заметку, я сделал полное обновление всех пакетов nuget (Update All). Это сделало трюк для меня, поскольку я уже сделал миграцию ~ несколько месяцев назад, когда я обновил EF. – jscriptor
Отлично. В то время это сводило меня с ума. Не забудьте проголосовать за ответ. –