Я использую POCO в сочетании с EF4, и некоторые сущности находятся в отношениях "многие ко многим", в моем случае объекты класса User и объекты класса PrivilegeGroup.
Вот как выглядит класс User:
public class User
{
public int UserID { set; get; }
public string UserName { get; set; }
public string UserPassword { get; set; }
public bool IsActive { get; set; }
public List<PrivilegeGroup> PrivilegeGroups { get; set; }
}
А вот так выглядит класс PrivilegeGroup:
public class PrivilegeGroup
{
public int PrivilegeGroupID { get; set; }
public string Name { get; set; }
public List<User> Users { get; set; }
public List<HasPrivilege> HasPrivileges { get; set; }
}
Я расширил класс ObjectContext
следующим образом:
public class AdminMDSContext : ObjectContext
{
public AdminMDSContext(string connectionString)
: base(connectionString)
{
this.DefaultContainerName = "MDSUsers_Entities";
_users = CreateObjectSet<User>();
_privilegeGroups = CreateObjectSet<PrivilegeGroup>();
}
private ObjectSet<User> _users;
private ObjectSet<PrivilegeGroup> _privilegeGroups;
public ObjectSet<User> Users
{
get { return _users; }
}
public ObjectSet<PrivilegeGroup> PrivilegeGroups
{
get { return _privilegeGroups; }
set { _privilegeGroups = value; }
}
}
Запросы и вставка этих объектов работают нормально, но удаление создает проблему, т. Е. Я хочу удалить PrivilegeGroup из одного пользователя без обратной связи db, но я не знаю, как это сделать.
Может кто-нибудь, пожалуйста, помогите мне?