При создании отношения многих ко многим с использованием первого подхода к коду EF 4.3 я не могу сохранить данные в таблице соединений, также не может быть примеров того, как заполнить эту таблицу, используя сохранение объекта в Icollection ... Вот мой пример:Entity Framework 4.3 CF много-ко-многим связанным с сохранением объекту?
МОДЕЛИ
public class Hospital
{
//PK
[Key]
public int Id { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string County { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
public Guid User_Id { get; set; }
//FK
public virtual ICollection<Operator> Operators { get; set; }
}
public class Operator
{
//PK
[Key]
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public DateTime Dob { get; set; }
public string Email { get; set; }
//FK
public virtual ICollection<Hospital> Hospitals { get; set; }
}
public class Project: DbContext
{
public DbSet<Hospital> Hospitals { get; set; }
public DbSet<Operator> Operators { get; set; }
}
CONTROLLER
public void AddOperater()
{
Hospital h = new Hospital();
h = db.Hospitals.Single(a=>a.Id ==1);
var o = new Operator();
o.FirstName = "John";
o.LastName = "Doe";
o.Dob = new DateTime(1988,2,12);
o.Email = "[email protected]";
o.Hospitals.Add(h);
db.SaveChanges();
}
При таком подходе я держу получ Ошибка здесь: o.Hospitals.Add(h);
, даже если мой экземпляр больницы заполнен данными. Как точно сохранить данные в обе таблицы, dbo.Operators
и dbo.OperatorHospital
, которая является таблицей отношений?
Спасибо, теперь работает отлично! –