Click or drag to resize
PersistentObjectFieldFilterOperator Enumeration
Describes a persistent object field filter operator.

Namespace: Obujekutoru
Assembly: obujekutoru (in obujekutoru.dll) Version: 1.0.0.19089 (1.0.0.*)
Syntax
public enum PersistentObjectFieldFilterOperator
Members
  Member nameValueDescription
None0 Value used for initialization.
Equal1 Equal operator.
NotEqual2 Not equal operator.
LessThan3 Less than operator.
LessOrEqualThan4 Less or equal than operator.
GreaterThan5 Greater than.
GreaterOrEqualThan6 Greater or equal than.
FlagSet7 Flag is set operator.
FlagNotSet8 Flag is not set operator.
Examples
using System;
using System.Collections;
using System.Collections.Generic;

using Obujekutoru;

namespace ObujekutoruExamples.PersistentObjectFieldFilterOperatorExample
{
    class Program
    {
        static void Main(string[] args)
        {
            String dataFolderPath = @"C:\Temp\ObujekutoruData";
            EncryptionType encryptionType = EncryptionType.DESEncryption;
            String encryptionKey = "A proavo habui, quod publicos litterarum ludos non frequentavi, et domi bonis praeceptoribus usus...";

            List<PersistentObject> persistentObjects;

            using (Connection connection = new Connection(dataFolderPath, encryptionType, encryptionKey, true))
            {
                PersistentObjectE persistentObjectE1 = new PersistentObjectE("persistent object E1", 1);
                PersistentObjectE persistentObjectE2 = new PersistentObjectE("persistent object E2", 2);
                PersistentObjectE persistentObjectE3 = new PersistentObjectE("persistent object E3", 3);
                PersistentObjectE persistentObjectE4 = new PersistentObjectE("persistent object E4", 4);
                PersistentObjectE persistentObjectE5 = new PersistentObjectE("persistent object E5", 5);
                PersistentObjectE persistentObjectE6 = new PersistentObjectE("persistent object E6", 6);
                PersistentObjectE persistentObjectE7 = new PersistentObjectE("persistent object E7", 7);
                PersistentObjectE persistentObjectE8 = new PersistentObjectE("persistent object E8", 8);
                PersistentObjectE persistentObjectE9 = new PersistentObjectE("persistent object E9", 9);

                connection.InsertPersistentObject(persistentObjectE1);
                connection.InsertPersistentObject(persistentObjectE2);
                connection.InsertPersistentObject(persistentObjectE3);
                connection.InsertPersistentObject(persistentObjectE4);
                connection.InsertPersistentObject(persistentObjectE5);
                connection.InsertPersistentObject(persistentObjectE6);
                connection.InsertPersistentObject(persistentObjectE7);
                connection.InsertPersistentObject(persistentObjectE8);
                connection.InsertPersistentObject(persistentObjectE9);

                persistentObjects = connection.SelectPersistentObject(
                    typeof(PersistentObjectE),
                    PersistentObjectFieldFilterCollection.Empty().And(
                        new PersistentObjectFieldFilter(
                            "persistentObjectName",
                            PersistentObjectFieldFilterOperator.GreaterOrEqualThan,
                            "persistent object E4")).And(
                        new PersistentObjectFieldFilter(
                            "persistentObjectValue",
                            PersistentObjectFieldFilterOperator.LessOrEqualThan,
                            6)),
                    PersistentObjectFieldSorterCollection.Empty().And(
                        new PersistentObjectFieldSorter(
                            "persistentObjectName",
                            PersistentObjectFieldSortOperator.Ascending)),
                    1, Int32.MaxValue);

                Console.WriteLine("persistentObjects[0] = {0}", (persistentObjects[0] as PersistentObjectE).PersistentObjectName);
                Console.WriteLine("persistentObjects[1] = {0}", (persistentObjects[1] as PersistentObjectE).PersistentObjectName);
                Console.WriteLine("persistentObjects[2] = {0}", (persistentObjects[2] as PersistentObjectE).PersistentObjectName);
            }
        }
    }

    [PersistentObject("PersistentObjectE")]
    internal class PersistentObjectE : PersistentObject
    {
        [PersistentObjectField("persistentObjectName", true)]
        private String _persistentObjectName;

        [PersistentObjectField("persistentObjectValue", true)]
        private Int32 _persistentObjectValue;

        public PersistentObjectE()
        { }
        public PersistentObjectE(String persistentObjectName, Int32 persistentObjectValue)
        {
            _persistentObjectName = persistentObjectName;
            _persistentObjectValue = persistentObjectValue;
        }

        public String PersistentObjectName
        {
            get { return _persistentObjectName; }
            set
            {
                _persistentObjectName = value;
                _isDirty = true;
                _updated = DateTime.UtcNow;
            }
        }

        public Int32 PersistentObjectValue
        {
            get { return _persistentObjectValue; }
            set
            {
                _persistentObjectValue = value;
                _isDirty = true;
                _updated = DateTime.UtcNow;
            }
        }
    }
}
See Also