Beispiel #1
0
 public void DenyWriteNavigationPeoperty()
 {
     CreateTwoObjects();
     using (DbContextNavigationReferenceObject context = new DbContextNavigationReferenceObject()) {
         context.PermissionsContainer.AddMemberPermission <DbContextNavigationReferenceObject, One>(SecurityOperation.Write, OperationState.Deny, "Reference",
                                                                                                    (s, t) => true);
         One one = context.One.Include(p => p.Reference).First(p => p.Name == "1");
         one.Reference = null;
         AssertFail(context);
     }
 }
Beispiel #2
0
 private void CreateTwoObjects()
 {
     using (DbContextNavigationReferenceObject context = new DbContextNavigationReferenceObject()) {
         context.ResetDatabase();
         One one1 = new One();
         one1.Name = "1";
         context.Add(one1);
         One one2 = new One();
         one2.Name      = "2";
         one1.Reference = one2;
         context.SaveChanges();
     }
 }
Beispiel #3
0
 public void DenyWriteNavigationPeoperty_AddExisting_NavigationCriteria()
 {
     CreateTwoObjects();
     using (DbContextNavigationReferenceObject context = new DbContextNavigationReferenceObject()) {
         context.PermissionsContainer.AddMemberPermission <DbContextNavigationReferenceObject, One>(SecurityOperation.Write, OperationState.Deny, "Reference",
                                                                                                    (s, t) => t.Reference != null && t.Reference.Name == "2");
         One one = context.One.Include(p => p.Reference).First(p => p.Name == "1");
         one.Reference = null;
         context.SaveChanges();
         one.Reference = one;
         context.SaveChanges();
         One one2 = context.One.Include(p => p.Reference).First(p => p.Name == "2");
         one.Reference = one2;
         AssertFail(context);
     }
 }
Beispiel #4
0
 public void ClearDatabase()
 {
     using (DbContextNavigationReferenceObject context = new DbContextNavigationReferenceObject()) {
         context.ResetDatabase();
     }
 }