Quantcast
Channel: ASP.NET Core
Viewing all articles
Browse latest Browse all 9386

Speed up for large data

$
0
0

Hi folks,

I am using asp.net core with web api and Novell LDAP library. Here is sample code as below:

LdapConnection conn = new LdapConnection();
Console.WriteLine("Connecting to:" + ldapHost);
conn.Connect(ldapHost, ldapPort);
conn.Bind(loginDN, password);
LdapSearchResults lsc = conn.Search(searchBase, LdapConnection.SCOPE_SUB, searchFilter, null, false);

var attributeListObject = new List<object>();

while (lsc.hasMore())
{
    LdapEntry nextEntry = null;
    try
    {
        nextEntry = lsc.next();
    }
    catch (LdapException e)
    {
        Console.WriteLine("Error: " + e.LdapErrorMessage);
        continue;
    }

    var entry = new PersonEntry();

    LdapAttributeSet attributeSet = nextEntry.getAttributeSet();
    IEnumerator ienum = attributeSet.GetEnumerator();

    while (ienum.MoveNext())
    {
        LdapAttribute attribute = (LdapAttribute)ienum.Current;
        string attributeName = attribute.Name;
        string attributeVal = attribute.StringValue;

        if (!Base64.isLDIFSafe(attributeVal))
        {
            byte[] tbyte = SupportClass.ToByteArray(attributeVal);
            attributeVal = Base64.encode(SupportClass.ToSByteArray(tbyte));
        }

        switch (attributeName)
        {
            case "sAMAccountName":
                entry.UserName = attributeVal;
                break;
            case "displayName":
                entry.Name = attributeVal;
                break;
            case "telephoneNumber":
                entry.TelephoneNumber = attributeVal;
                break;
            case "thumbnailPhoto":
                var value = attribute.ByteValue;
                entry.ThumbnailPhoto = (byte[])(Array)value;
                break;
            default:
                break;
        }
    }
    attributeListObject.Add(entry);
}
conn.Disconnect();
return Ok(attributeListObject);

When i build it and it will take more than 20 seconds. See screenshot as below:

Is it possible to speed up loops for large data? if yes then how?

I am waiting for your response.

Thanks in advance!


Viewing all articles
Browse latest Browse all 9386

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>