예제 #1
0
 public virtual bool Equals(PersonTuple other)
 {
     if (ReferenceEquals(null, other))
     {
         return(false);
     }
     if (ReferenceEquals(this, other))
     {
         return(true);
     }
     return(Equals(other.PersonTupleId, PersonTupleId));
 }
예제 #2
0
        protected override void Initialize()
        {
            var personA = new Person {
                Name = "Peter"
            };
            var personB = new Person {
                Name = "Mary"
            };
            var cons = new Constant {
                Id = "USD", Name = "US Dollars"
            };

            //Revision 1
            using (var tx = Session.BeginTransaction())
            {
                Session.Save(personA);
                Session.Save(personB);
                Session.Save(cons);
                var tuple = new PersonTuple(true, personA, personB, cons);
                Session.Save(tuple);
                tx.Commit();
                tuple1Ver1 = createTuple(tuple);
            }

            //Revision 2
            var personC1 = new Person {
                Name = "Lukasz"
            };
            PersonTuple tuple2;

            using (var tx = Session.BeginTransaction())
            {
                Session.Save(personC1);
                tuple2 = new PersonTuple(true, personA, personC1, cons);
                Session.Save(tuple2);
                tx.Commit();
                tuple2Ver1  = createTuple(tuple2);
                personCVer1 = new Person {
                    Id = personC1.Id, Name = personC1.Name
                };
                personCVer1.PersonBTuples.Add(tuple2Ver1);
            }

            //Revision 3
            using (var tx = Session.BeginTransaction())
            {
                tuple2.HelloWorld = false;
                tx.Commit();
                tuple2Ver2 = createTuple(tuple2);
            }

            //Revision 4
            using (var tx = Session.BeginTransaction())
            {
                personC1.Name = "Robert";
                tx.Commit();
                personCVer2 = new Person {
                    Id = personC1.Id, Name = personC1.Name
                };
                personCVer2.PersonBTuples.Add(tuple2Ver1);
            }
        }
예제 #3
0
 private static PersonTuple createTuple(PersonTuple tuple)
 {
     return(new PersonTuple(tuple.HelloWorld, tuple.PersonA, tuple.PersonB, tuple.Constant));
 }