Sample code for quick reference for connecting to CDS through a console application using OAuth
Add the NuGet package for Microsoft.CrmSdk.XrmTooling.CoreAssembly in the project.
Xrm.Tooling is the preferred way to connect to CDS, because of many benefits – we can define connection string, thread safety, support for X.509 certificate authentication, support for secure storage of sign-in credentials and reuse etc.

Note –
Here we will be using the sample AppId and Redirect URI.

Sample Code-
123456789101112131415161718192021222324252627282930usingMicrosoft.Xrm.Sdk;usingMicrosoft.Xrm.Tooling.Connector;usingSystem;namespaceSampleConsoleApp{classProgram{staticvoidMain(string[] args){stringConnectionString ="AuthType = OAuth; "+"Username = [username]@[domain].onmicrosoft.com;"+"Password = [password]; "+"Url = https://[orgname].crm.dynamics.com;"+"AppId=51f81489-12ee-4a9e-aaae-a2591f45987d;"+"RedirectUri=app://58145B91-0C36-4500-8554-080854F2AC97;"+"LoginPrompt=Auto";CrmServiceClient svc =newCrmServiceClient(ConnectionString);if(svc.IsReady){varmyContact =newEntity("contact");myContact.Attributes["lastname"] ="Test";myContact.Attributes["firstname"] ="User1";svc.Create(myContact);}}}}
For .NET Framework 4.5.2 – we need to explicitly specify Tls1.2 as the default protocol.
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
.NET Framework 4.6.2 uses TLS 1.2 as the default protocol.

No comments:
Post a Comment