示例#1
0
        private void FixupEmployees2(Employees previousValue, bool skipKeys = false)
        {
            if (IsDeserializing)
            {
                return;
            }

            if (previousValue != null && previousValue.Employees1.Contains(this))
            {
                previousValue.Employees1.Remove(this);
            }

            if (Employees2 != null)
            {
                if (!Employees2.Employees1.Contains(this))
                {
                    Employees2.Employees1.Add(this);
                }

                ReportsTo = Employees2.EmployeeID;
            }
            else if (!skipKeys)
            {
                ReportsTo = null;
            }

            if (ChangeTracker.ChangeTrackingEnabled)
            {
                if (ChangeTracker.OriginalValues.ContainsKey("Employees2") &&
                    (ChangeTracker.OriginalValues["Employees2"] == Employees2))
                {
                    ChangeTracker.OriginalValues.Remove("Employees2");
                }
                else
                {
                    ChangeTracker.RecordOriginalValue("Employees2", previousValue);
                }
                if (Employees2 != null && !Employees2.ChangeTracker.ChangeTrackingEnabled)
                {
                    Employees2.StartTracking();
                }
            }
        }
示例#2
0
        static void Main()
        {
            Employees2 objSortedList = new Employees2();

            //SortedList<int, Employee> objSortedList = new SortedList<int, Employee>();
            objSortedList.Add(1, new Employee {
                Empno = 1, Name = "a"
            });
            objSortedList.Add(2, new Employee {
                Empno = 2, Name = "b"
            });
            objSortedList.Add(3, new Employee {
                Empno = 3, Name = "c"
            });

            foreach (KeyValuePair <int, Employee> objKvp in objSortedList)
            {
                Console.Write(objKvp.Key);
                Console.Write(objKvp.Value.Empno);
                Console.WriteLine(objKvp.Value.Name);
            }
        }
示例#3
0
        public static void TestCollection()
        {
            Employees2 employees2 = new Employees2()
            {
                new Employee()
                {
                    Name = "Mike"
                },
                new Employee()
                {
                    Name = "Rose"
                }
            };
            ICollection <Employee> employees = employees2;

            employees.Add(new Employee()
            {
                Name = "Steve"
            });
            foreach (var item in employees2)
            {
                Console.WriteLine(item.Name);
            }
        }