Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics CRM forum
Unanswered

How to Re-Authenticating connection using a new CrmServiceClient?

Posted on by 5
I am using the latest version of Microsoft.CrmSdk.XrmTooling.CoreAssembly.9.1.0.108
My service use multiple Dynamics 365 users, so I cached a CrmServiceClient instance for every user.

But I can't find a proper way how to update a token when it has expired.

OrganizationService.CheckIfTokenIsExpired  is deprecated.

This is my connection cache code
        private static readonly Dictionary _crmClientCache = new Dictionary();

        private static readonly Object _orgServiceLock = new Object();

        private static readonly string _authType = "OAuth";
        private static readonly string _requireNewInstance = "true";
        private static readonly string _appId = "51f81489-12ee-4a9e-aaae-a2591f45987d";
        private static readonly string _reDirectURI = "app://58145B91-0C36-4500-8554-080854F2AC97";


        public static CrmServiceClient GetCrmClient(string userName, string password, string url)
        {
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

            string ConnectionString = string.Format("AuthType={0};Username={1};Password={2};Url={3};AppId={4};RedirectUri={5};RequireNewInstance={6};",
            _authType, userName, password, url, _appId, _reDirectURI, _requireNewInstance);

            CrmServiceClient crmClient;

            lock (_orgServiceLock)
            {
                if (!_crmClientCache.ContainsKey(ConnectionString))
                {
                    crmClient = new CrmServiceClient(ConnectionString);
                    _crmClientCache.Add(ConnectionString, crmClient);
                }
            }

            crmClient = _crmClientCache[ConnectionString];

            if (crmClient.IsReady)
            {
                return crmClient;
            }
            throw new Exception(crmClient.LastCrmError);
        }
Thanks for help!
Categories:

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Anton Venter – Community Spotlight

Kudos to our October Community Star of the month!

Announcing Our 2024 Season 2 Super Users!

A new season of Super Users has arrived, and we are so grateful for the daily…

Dynamics 365 Community Newsletter - September 2024

Check out the latest community news

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 290,532 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 228,501 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,148

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans