1
내 시드 방법에서 AddOrUpdate를 사용하여 내 권한을 최신 상태로 유지하지만 아래 코드가 기존 역할을 (작성하는 대신) 업데이트하는 상황에서 작성한 모든 새 권한 역할에 추가되지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?AddOrUpdate가 하위 항목을 수정하지 않습니다.
foreach (KeyValuePair<string, string[]> s in new Dictionary<string, string[]>{
{"Superuser", context.Permissions.Select<Permission, string>(p=>p.Name).ToArray()},
})
{
Role r = new Role();
r.Name = s.Key;
r.Permissions = new List<Permission>();
foreach (string p in s.Value)
r.Permissions.Add(context.Permissions.Where(per => per.Name == p).First());
context.Roles.AddOrUpdate(i => i.Name, r);
}
context.SaveChanges();
이 경우 사용 권한과 역할은 다 대다 관계이므로 AddOrUpdate를 사용하지 않고 별도로 업데이트해야하지만 여전히 질문에 대답합니다. 감사! – pquest