Click or drag to resize

ConnectionSelectPersistentObjectCountAsyncPersistentObjectType Method

Retrieves the count of persistent objects from the data store as an asynchronous operation.

Namespace:  Obujekutoru
Assembly:  obujekutoru (in obujekutoru.dll) Version: 1.2.0.35246
Syntax
public Task<int> SelectPersistentObjectCountAsync<PersistentObjectType>(
	PersistentObjectFieldFilterCollection persistentObjectFieldFilterCollection
)

Parameters

persistentObjectFieldFilterCollection
Type: ObujekutoruPersistentObjectFieldFilterCollection
The persistent object field filters to use for the search.

Type Parameters

PersistentObjectType

Return Value

Type: TaskInt32
The task object representing the asynchronous operation.
Exceptions
ExceptionCondition
ArgumentNullException The persistent object type is null, the persistent object field filters list is null.
InvalidOperationExceptionThe connection has been disposed of.
Examples
using System;
using System.Collections;
using System.Collections.Generic;

using Obujekutoru;

namespace ObujekutoruExamples.ConnectionSelectCountExample
{
  ...

    internal class AsyncSelectCountClass
    {
        public async void AsyncSelectCountMethod()
        {
            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...";

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

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

                Int32 persistentObjectCount = await connection.SelectPersistentObjectCountAsync<PersistentObjectE>(
                    PersistentObjectFieldFilterCollection.With(
                        "persistentObjectValue", PersistentObjectFieldFilterOperator.Equal, 2));

                Console.WriteLine("persistentObjectCount = {0}", persistentObjectCount);
            }
        }
    }

  ...
}
See Also