2010-03-28 2 views
1

У меня есть модель edmx, на которую я наложил две таблицы на: один называется «файл», а другой «ApplicaitonFile». Эти две таблицы имеют отношение 1 к 1 в базе данных. Если я остановлюсь здесь, все будет хорошо.edmx - операция не может быть завершена - после добавления наследования

Но в моей модели я хочу, чтобы «ApplicaitonFile» наследовал «Файл». Поэтому я удаляю отношения 1 к 1, а затем настраиваю «ApplicaitonFile» из «Файл», а затем удаляю FileId из «ApplicaitonFile», который был основным ключом. (Примечание. Я следую инструкциям от here).

Если я оставил модель открытой в этот момент, все будет в порядке, но как только я закрою ее, если я попытаюсь снова ее открыть, я получаю следующую ошибку: «Операция не может быть выполнена».

Я искал решение и нашел это - Entity Model does not load, но насколько я могу судить, у меня нет дубликатов InheritanceConnectors (хотя я не знаю точно, что я ищу, но я не могу см. что-то необычное - например, 2 разъема с таким же именем), и изначально у меня есть соотношение от 1 до 1, а не от 1 до 0..1

Любые идеи ???

+0

Возможно, вы должны дать немного более подробную информацию, иначе сузите проблему. Я бы даже не пытался воспроизвести вашу проблему с тем, что вы здесь дали. Можете ли вы воспроизвести это с помощью двух таблиц из AdventureWorks? –

ответ

1

У меня были проблемы с файлами EDMX, которые не открываются из-за проблем с макетом. Когда это произойдет, я получил «Операция не может быть завершена».

Попробуйте это (пожалуйста, убедитесь, что вы создали резервную копию своей модели).

Откройте свою модель с помощью VS XML Editor (щелкните правой кнопкой мыши на открывшемся окне).

Удалить или закомментируйте раздел

<edmx:Edmx ... 
    ... 
    <edmx:Designer> 

    <edmx:Diagrams> 
     <Diagram> 
      //Comment these out ... 
     </Diagram> 
    </edmx:Diagrams> 
    </edmx:Designer> 
</edmx:Edmx> 

чтобы она стала:

<edmx:Edmx ... 
    ... 
    <edmx:Designer> 

    <edmx:Diagrams> 
     <!-- 
     <Diagram> 

     </Diagram> 
     --> 
    </edmx:Diagrams> 
    </edmx:Designer> 
</edmx:Edmx> 

Затем закрыть и снова открыть модель. Если он работает *, вам нужно удалить материал, который вы закомментировали. Работал для меня, надеюсь, это сработает для вас.

+0

Приветствия, я дам ему –

+0

Отличный совет, решена моя операция не может быть выполнена ошибка. Спасибо – Tr1stan

-1

Я столкнулся с проблемой при открытии открытой модели объекта. Это вызвало ошибку «Операция не может быть завершена»

Я нашел несколько тегов, которые не были закрыты в моем Entities.edmx.diagram файле. Таким образом, это был не допустимый формат XML.

Я исправил файл Entities.edmx.diagram xml, который разрешил его для моей проблемы.

2

VS2013 + EF6. Я закрываю решение и удаляю папки BIN и OBJ в папке проекта. Это помогло.

+0

Работал для меня, хотя вместо ручного удаления BIN и OBJ я просто очистил проект. – jahu

Смежные вопросы