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-
123456789101112131415161718192021222324252627282930using
Microsoft.Xrm.Sdk;
using
Microsoft.Xrm.Tooling.Connector;
using
System;
namespace
SampleConsoleApp
{
class
Program
{
static
void
Main(
string
[] args)
{
string
ConnectionString =
"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 =
new
CrmServiceClient(ConnectionString);
if
(svc.IsReady)
{
var
myContact =
new
Entity(
"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