Произошла ошибка при выполнении определения команды. Смотрите внутреннее исключение для деталей

В моем приложении mvc asp.net я получаю сообщение об ошибке в функции редактирования: в данном коде

public ActionResult Edit(int id)
{

      var res = (from r in objeEntities.DocumentationsSet.Include("DocStatus")
                where r.textid == id select r)
                .First();
}

Я получаю это исключение:

Source : System.Data.Entity

Stack Trace : 
at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior) 
at System.Data.Objects.Internal.ObjectQueryExecutionPlan.Execute[TResultType](ObjectContext
   context, ObjectParameterCollection parameterValues) 
at System.Data.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption) 
at System.Data.Objects.ObjectQuery`1.System.Collections.Generic.IEnumerable.GetEnumerator()
at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
at System.Data.Objects.ELinq.ObjectQueryProvider.b__0[TResult](IEnumerable`1 sequence) 
at System.Data.Objects.ELinq.ObjectQueryProvider.ExecuteSingle[TResult](IEnumerable`1 query, Expression queryRoot)
at System.Data.Objects.ELinq.ObjectQueryProvider.System.Linq.IQueryProvider.Execute[S](Expression expression)
at System.Linq.Queryable.First[TSource](IQueryable`1 source)
at admin.com.Controllers.DocsGridController.Edit(Int32 id) in c:\Data\FinalCode\AC015\acomMVCSourceCode\admincom\Controllers\DocsController.cs:line
   307

Message : An error occurred while executing the command definition. See the inner exception for details.

Эта ошибка генерируется при подключении к удаленному серверу.

Что это за ошибка? Как мне это исправить?

8 ответов

Обычно это означает, что ваши файлы схемы и сопоставления не синхронизированы и где-то есть переименованный или отсутствующий столбец.

Проведя часы, я обнаружил, что пропустил 's' буква в названии таблицы

это было [Table("Employee")] вместо [Table("Employees")]

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

В моем случае я испортил connectionString свойство в профиле публикации, пытается получить доступ к неправильной базе данных (Initial Catalog). Entity Framework затем жалуется, что сущности не соответствуют базе данных, и это правильно.

Фактический запрос не возвращает результатов? First() потерпит неудачу, если нет результатов.

У меня была похожая ситуация с ошибкой "Произошла ошибка при выполнении определения команды". У меня были некоторые представления, которые захватывали из другой базы данных, которая использовала безопасность текущего пользователя. Второй БД не разрешил вход в систему для пользователя первого БД, вызвавшего возникновение этой проблемы. Я добавил логин db на сервер, на который он пытался получить доступ с исходного сервера, и это устранило проблему. Проверьте свои представления и посмотрите, есть ли какие-либо связанные базы данных, которые имеют другую безопасность, чем база данных, в которую вы входите изначально.

В моем случае, это было от сохраненных производителей. Я удалил поле из таблицы и забыл удалить его из моего SP.

Посмотрите на Внутреннее исключение и выясните, какой объект мог вызвать проблему, возможно, вы изменили его имя.

Я только что столкнулся с этой проблемой, и это потому, что я обновил представление в моей БД, а не обновил схему в моем отображении.

Другие вопросы по тегам