Неверное имя столбца. Не знаю почему? - PullRequest
0 голосов
/ 16 сентября 2018

Недавно я добавил DateofBirth в таблицу. И Локально это работает отлично. Я также обновляю базу данных клиента и модель данных объекта. Но появляются ошибки.

Неверное имя столбца 'DateofBirth'. Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.

Сведения об исключении: System.Data.SqlClient.SqlException: недопустимое имя столбца 'DateofBirth'.

Трассировка стека:

[SqlException (0x80131904): недопустимое имя столбца 'DateofBirth'.] System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое прерывание соединения, завершение действия 1 wrapCloseInAction) +3305692 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +736 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +4061 System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() +90 System.Data.SqlClient.SqlDataReader.get_MetaData() +99 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted) +604 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest) +3303 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource 1, тайм-аут Int32, задание и задание, логический и используемый кэш, логическое асинхронное письмо, логическое inRetry) +667 System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, логический returnStream, метод String) +83 System.Data.SqlClient.SqlCommand.ExecuteReader (поведение CommandBehavior, метод String) +301 System.Data.Entity.Infrastructure.Interception.InternalDispatcher 1.Dispatch(TTarget target, Func 3 операция, TInterceptionContext interceptionContext, действие 3 executing, Action 3 выполнено) +104 System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader (команда DbCommand, DbCommandInterceptionContext interceptionContext) +499 System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands (EntityCommand entityCommand, поведение CommandBehavior) + 36

[EntityCommandExecutionException: произошла ошибка при выполнении определения команды. См. Внутреннее исключение для деталей.] System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands (EntityCommand entityCommand, поведение CommandBehavior) +125 System.Data.Entity.Core.Objects.Internal.ObjectQueryExecutionPlan.Execute (контекст ObjectContext, параметр ObjectParameterCollectionValues) +1014 System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction (операция Func 1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess) +459 System.Data.Entity.Core.Objects.<>c__DisplayClass7.<GetResults>b__5() +203 System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute(Func 1) +234 System.Data.Entity.Core.Objects.ObjectQuery 1.GetResults(Nullable 1 forMergeOption) +354 System.Data.Entity.Core.Objects.ObjectQuery 1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__0() +30 System.Data.Entity.Internal.LazyEnumerator 1.MoveNext () +39 System.Collections.Generic.List 1..ctor(IEnumerable 1 коллекция) +436 System.Linq.Enumerable.ToList (IEnumerable 1 source) +70 BLAST.Controllers.EmployeeVarityReportController.EmpDetails() +5302 lambda_method(Closure , ControllerBase , Object[] ) +87 System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary 2 параметров) +229 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod (ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary 2 parameters) +35 System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) +39 System.Web.Mvc.Async.WrappedAsyncResult 2.CallEndDelegate (IAsyncResult asyncResult) +77 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod (IAsyncResult asyncResult) +42 System.Web.Mvc.Async.AsyncInvocationWithFilters.b__3d () +72 System.Web.Mvc.Async. <> C__DisplayClass46.b__3f () +387 System.Web.Mvc.Async. <> C__DisplayClass46.b__3f () +387 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters (IAsyncResult asyncResult) +42 System.Web.Mvc.Async. <> C__DisplayClass2b.b__1c () +38 System.Web.Mvc.Async. <> C__DisplayClass21.b__1e (IAsyncResult asyncResult) +188 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction (IAsyncResult asyncResult) +38 System.Web.Mvc.Controller.b__1d (IAsyncResult asyncResult, ExecuteCoreState innerState) +29 System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +73 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +52 System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate (IAsyncResult asyncResult) +39 System.Web.Mvc.Controller.EndExecute (IAsyncResult asyncResult) +38 System.Web.Mvc.MvcHandler.b__5 (IAsyncResult asyncResult, ProcessRequestState innerState) +43 System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate (IAsyncResult asyncResult) +73 System.Web.Mvc.MvcHandler.EndProcessRequest (IAsyncResult asyncResult) +38 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute () +602 System.Web.HttpApplication.ExecuteStepImpl (шаг IExecutionStep) +195System.Web.HttpApplication.ExecuteStep (шаг IExecutionStep, логическое и завершено синхронно) + 128

Ответы [ 3 ]

0 голосов
/ 17 сентября 2018

Основываясь на трассировке стека, я подозреваю, что вы установили AutomaticMigrationsEnabled в false в классе конфигурации. Чтобы это исправить, вам нужно вручную создать новый файл миграции. новую миграцию можно создать с помощью команды Add-Migration в консоли диспетчера пакетов Nuget.

Вот руководство по созданию нового сценария миграции.

0 голосов
/ 23 июля 2019

Я получаю такую ​​ошибку, когда обновляю свою таблицу в базе данных, но еще не привязываю данные или не сопоставляю их в своем интерфейсе. После обновления источника данных на уровне привязки данных все прошло хорошо. Так что я думаю, что эта ошибка вызвана синхронизацией / обновлением данных на уровне базы данных и уровне взаимодействия. Итак, что я должен сделать, это проверить все сопоставления таблицы полей столбца управления.

0 голосов
/ 16 сентября 2018

Столбец не существует в таблице, необходимо выполнить миграцию или использовать другие средства для обновления базы данных клиентов.

...