Я работаю на mvc4 приложение с Ef5 codefirst и я не могу решить эту ошибку:Многие ошибки идентичности многих отношениях
В элемент с идентичностью «XXXX» не существует в коллекции метаданных.
Update: Я видел, что я использовал два различных контекста (объект навигации был назван Копание в хранилище, которое создает другой DbContext), вероятно, это проблема. Я изменил это, но теперь я получаю новую ошибку:
Invalid column name 'Brewery_BreweryId'.
В IntelliTrace я увидел, что эф пытается
select ..., Brewery_BreweryId from UserProfiles
В этой колонке нет и не должно присутствовать, я хочу многие для многих, а не для многих.
Я думаю, что это связано со многими отношениями.
это пример моего кода
internal class BreweryConfiguration : EntityTypeConfiguration<Brewery>
{
public BreweryConfiguration()
{
// PK
HasKey(e => e.BreweryId);
// FK
HasMany(e => e.UserProfiles)
.WithMany()
.Map(m =>
{
m.MapLeftKey("BreweryId");
m.MapRightKey("UserId");
m.ToTable("BreweryUserProfiles");
});
namespace Project2.DAL.Entities
{
[Table("Breweries")]
public class Brewery : ABrewery
{
public int BreweryId { get; set; }
public ICollection<UserProfile> UserProfiles { get; set; }
}
}
namespace Project1.DAL.Entities
{
[Table("UserProfiles")]
public class UserProfile : IUserProfile
{
[Key]
public int UserId { get; set; }
...
}
}
Я пробовал, я также пытался удалить таблицы и воссоздать все с нуля. Я попытался удалить карту и позволить EF выполнять эту работу для меня. Я получаю всегда ту же ошибку. При необходимости я могу опубликовать больше кода. – Davide
Я обновил сообщение с дополнительной информацией. Если вы можете мне помочь, я буду очень признателен, потому что я схожу с ума от этого: S – Davide