Exemple #1
0
        public static void KeyValueListMergeTest()
        {
            PFKeyValueListEx <int, string> list1 = new PFKeyValueListEx <int, string>();
            PFKeyValueListEx <int, string> list2 = new PFKeyValueListEx <int, string>();
            PFKeyValueListEx <int, string> list3 = new PFKeyValueListEx <int, string>();

            try
            {
                _msg.Length = 0;
                _msg.Append("KeyValueListMergeTest started ...\r\n");
                Program._messageLog.WriteLine(_msg.ToString());

                list1.Add(new pfKeyValuePair <int, string>(1, "First"));
                list1.Add(new pfKeyValuePair <int, string>(2, "Second"));
                list1.Add(new pfKeyValuePair <int, string>(3, "Third"));

                list2.Add(new pfKeyValuePair <int, string>(4, "fourth"));
                list2.Add(new pfKeyValuePair <int, string>(5, "fifth"));
                list2.Add(new pfKeyValuePair <int, string>(6, "sixth"));

                list3.Add(new pfKeyValuePair <int, string>(7, "Seventh"));
                list3.Add(new pfKeyValuePair <int, string>(8, "Eighth"));
                list3.Add(new pfKeyValuePair <int, string>(9, "Ninth"));
                list3.Add(new pfKeyValuePair <int, string>(10, "Tenth"));

                PFKeyValueListEx <int, string>[]           listArray   = { list1, list2, list3 };
                PFListEx <PFKeyValueListEx <int, string> > listOfLists = new PFListEx <PFKeyValueListEx <int, string> >();
                listOfLists.Add(list1);
                listOfLists.Add(list2);
                listOfLists.Add(list3);

                PFKeyValueListEx <int, string> concatListFromArray = PFKeyValueListEx <int, string> .ConcatenateLists(listArray);

                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("Concatenated list from Array");
                _msg.Append(Environment.NewLine);
                _msg.Append(concatListFromArray.ToXmlString());
                Program._messageLog.WriteLine(_msg.ToString());


                PFKeyValueListEx <int, string> concatListFromList = PFKeyValueListEx <int, string> .ConcatenateLists(listOfLists);

                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("Concatenated list from List");
                _msg.Append(Environment.NewLine);
                _msg.Append(concatListFromList.ToXmlString());
                Program._messageLog.WriteLine(_msg.ToString());

                PFKeyValueListEx <int, string> mergedList = list1.Merge(list2);
                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("Merged list");
                _msg.Append(Environment.NewLine);
                _msg.Append(mergedList.ToXmlString());
                Program._messageLog.WriteLine(_msg.ToString());

                mergedList.Clear();
                mergedList = list3.Merge(new PFKeyValueListEx <int, string>[2] {
                    list1, list2
                });
                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("Merged list from Array");
                _msg.Append(Environment.NewLine);
                _msg.Append(mergedList.ToXmlString());
                Program._messageLog.WriteLine(_msg.ToString());

                mergedList.Clear();
                mergedList = list3.Merge(new PFListEx <PFKeyValueListEx <int, string> > {
                    list2, list1
                });
                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("Merged list from List");
                _msg.Append(Environment.NewLine);
                _msg.Append(mergedList.ToXmlString());
                Program._messageLog.WriteLine(_msg.ToString());
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                Program._messageLog.WriteLine(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), _saveErrorMessagesToAppLog);
            }
            finally
            {
                _msg.Length = 0;
                _msg.Append("\r\n... KeyValueListMergeTest finished.");
                Program._messageLog.WriteLine(_msg.ToString());
            }
        }
Exemple #2
0
        }//end GenericListTest

        public static void GenericKeyValueListTest()
        {
            PFKeyValueListEx <int, string>    kvlist       = new PFKeyValueListEx <int, string>();
            PFKeyValueListEx <int, string>    kvlist4      = new PFKeyValueListEx <int, string>();
            PFKeyValueListEx <string, string> kvlistString = new PFKeyValueListEx <string, string>();
            string kvlistFilename   = @"c:\temp\testkvlist.xml";
            string connectionString = string.Empty;
            string configValue      = string.Empty;

            try
            {
                _msg.Length = 0;
                _msg.Append("GenericKeyValueListTest started ...\r\n");
                Program._messageLog.WriteLine(_msg.ToString());

                configValue = AppConfig.GetStringValueFromConfigFile("ListsDatabaseFile", string.Empty);
                if (configValue.Length > 0)
                {
                    connectionString = configValue;
                }
                else
                {
                    connectionString = _listsDatabaseConnectionString;
                }

                Program._messageLog.WriteLine(Environment.NewLine);

                kvlistString.Add(new pfKeyValuePair <string, string>("one", "First value"));
                kvlistString.Add(new pfKeyValuePair <string, string>("two", "Second value"));
                kvlistString.Add(new pfKeyValuePair <string, string>("three", "Third value"));
                kvlistString.Add(new pfKeyValuePair <string, string>("four", "Fourth value is just this"));
                kvlistString.Add(new pfKeyValuePair <string, string>("five", "First value is whatever comes here"));

                Program._messageLog.WriteLine("Before delete: " + kvlistString.Count.ToString());
                if (kvlistString.Exists("three"))
                {
                    kvlistString.Remove("three");
                }
                Program._messageLog.WriteLine("After delete:  " + kvlistString.Count.ToString());

                Program._messageLog.WriteLine(Environment.NewLine);

                kvlist.Add(new pfKeyValuePair <int, string>(1, "First value"));
                kvlist.Add(new pfKeyValuePair <int, string>(2, "Second value"));
                kvlist.Add(new pfKeyValuePair <int, string>(3, "Third value"));
                kvlist.Add(new pfKeyValuePair <int, string>(4, "Fourth value is just this"));
                kvlist.Add(new pfKeyValuePair <int, string>(5, "First value is whatever comes here"));

                kvlist.SaveToXmlFile(kvlistFilename);

                PFKeyValueListEx <int, string> kvlist2 = PFKeyValueListEx <int, string> .LoadFromXmlFile(kvlistFilename);

                kvlist2.SetToBOF();
                pfKeyValuePair <int, string> kvp = kvlist2.FirstItem;
                while (!kvlist2.EOF)
                {
                    _msg.Length = 0;
                    _msg.Append(kvp.Key.ToString());
                    _msg.Append(", ");
                    _msg.Append(kvp.Value);
                    Program._messageLog.WriteLine(_msg.ToString());
                    kvp = kvlist2.NextItem;
                }

                kvlist.SaveToDatabase(connectionString, "TestprogListObjects_kvlist");

                PFKeyValueListEx <int, string> kvlist3 = PFKeyValueListEx <int, string> .LoadFromDatabase(connectionString, "TestprogListObjects_kvlist");

                _msg.Length = 0;
                _msg.Append("kvlist3 ToXmlString Test: ");
                Program._messageLog.WriteLine(_msg.ToString());
                _msg.Length = 0;
                _msg.Append(kvlist3.ToXmlString());
                Program._messageLog.WriteLine(_msg.ToString());


                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("kvlist4 Sort Test: ");
                _msg.Append(Environment.NewLine);
                Program._messageLog.WriteLine(_msg.ToString());

                kvlist4.Add(new pfKeyValuePair <int, string>(5, "YFifth value"));
                kvlist4.Add(new pfKeyValuePair <int, string>(4, "XFourth value"));
                kvlist4.Add(new pfKeyValuePair <int, string>(3, "Third value"));
                kvlist4.Add(new pfKeyValuePair <int, string>(2, "Second value"));
                kvlist4.Add(new pfKeyValuePair <int, string>(1, "First value"));

                kvlist4.SetToBOF();
                pfKeyValuePair <int, string> kvp4 = kvlist4.FirstItem;
                while (!kvlist4.EOF)
                {
                    _msg.Length = 0;
                    _msg.Append(kvp4.Key.ToString());
                    _msg.Append(", ");
                    _msg.Append(kvp4.Value);
                    Program._messageLog.WriteLine(_msg.ToString());
                    kvp4 = kvlist4.NextItem;
                }

                _msg.Length = 0;
                _msg.Append(Environment.NewLine);
                _msg.Append("kvlist4 after sort: ");
                _msg.Append(Environment.NewLine);
                Program._messageLog.WriteLine(_msg.ToString());

                kvlist4.SetToBOF();
                kvlist4.Sort(PFKeyValueListExComparers.CompareKeyValueListIntString);

                kvlist4.SetToBOF();
                kvp4 = kvlist4.FirstItem;
                while (!kvlist4.EOF)
                {
                    _msg.Length = 0;
                    _msg.Append(kvp4.Key.ToString());
                    _msg.Append(", ");
                    _msg.Append(kvp4.Value);
                    Program._messageLog.WriteLine(_msg.ToString());
                    kvp4 = kvlist4.NextItem;
                }

                Program._messageLog.WriteLine(Environment.NewLine);
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                Program._messageLog.WriteLine(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), _saveErrorMessagesToAppLog);
            }
            finally
            {
                _msg.Length = 0;
                _msg.Append("\r\n... GenericKeyValueListTest finished.");
                Program._messageLog.WriteLine(_msg.ToString());
            }
        }