Ссылочная таблица не приходит в моей модели через Entity Framework 5.0
Я использую MVC 4 и Entity Framework 5.0, у меня есть база данных, и эта база данных содержит 6 таблиц, названных следующим образом.
tblUser_family
tblUser_location
tblUser_info
tblUser_photo
tblUser_settings
tblUser_social
когда я создаю файл.edmx, то в конструктор приходит только 5 таблиц, одна таблица "tblUser_settings" не приходит, в то время как все таблицы связаны через foreginKeys.
Я получаю следующую ошибку
Ошибка 1 Ошибка 6004: на таблицу "Community.dbo.tblUser_settings" ссылается связь, но она не может быть найдена.
8 ответов
Недавно я решил свою проблему, проблема была в том, что у меня была главная таблица с первичным ключом, и этот первичный ключ был сопоставлен со столбцом моей отсутствующей таблицы в этом столбце. Я установил "Разрешить ноль", так как я изменил "Разрешить не ноль", и обновить мою модель данных из Entity Framework 5.0, это было видно в моем решении.
Спасибо за все предложения.
У меня была эта проблема, в моем случае я не создал первичный ключ для своей таблицы, поэтому я просто установил его и смог обновить EDMX.
Моя проблема была при создании внешних ключей, я не указал NOT NULL. Я внес изменения, и таблица импортирована очень хорошо.
Для внешних ключей я не указывал NOT NULL в справочных таблицах. Я обновил таблицу и обновил файл edmx, чтобы решить проблему.
Таблицы, у которых нет первичного ключа, не будут прочитаны Edmx
У меня была такая же проблема, но я забыл "Записать изменения". Раньше я работал с MSSQL Server, но с DB Browser для SQLite, даже после того, как мы запустили скрипт, нам все равно нужно "Записать изменения" / Ctrl + S, чтобы отразить их в базе данных. Также убедитесь, что FK не равны нулю и относятся к тому же типу данных. не int, а Integer и т.д. Также для EDMX вам необходимо определить PK в ваших таблицах. Слабые объекты не будут включены в EDMX.
Я также столкнулся с той же проблемой: не получались данные из ссылочной таблицы, связанной через внешний ключ с основной таблицей. Когда я пытался получить данные таблицы из класса DbContext. Раньше я получал данные, используя:
orders = _context.Orders.ToList();
Я не получаю данные справочной таблицы. Поэтому я использовал функцию «Включить».
orders = _context.Orders.Include(p => p.Person).ToList();
Это решение сработало для меня.