Skip to main content

Sample console application to connect MS CRM / D365

Here is a sample console application, to get connected with MS CRM / D365
Make sure, you are using .Net 4.6 framework. In case you are using .Net Framework below 4.6, please uncomment ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; in the below code. The main purpose of this to provide more secure connectivity to the application, in which we have Microsoft updated and industry standard security policies.

For more information on this, please refer here

Steps:

1. Open Visual Studio, click on New Project
2. Select Visual C# and chose Console Application in the right pane.
3. Chose a desired name and location to the application
4. Go to Tools -> NuGet Package Manager -> Package Manager Console
5. In the console window, paste this - Install-Package Microsoft.CrmSdk.CoreTools -Version 9.0.2.6

Earlier, we used to add all the required CRM dlls from CRM SDK, now this the above NuGet package is taking care of that and it contains official SDK tools authorized by Microsoft.

Code:


using System;
using System.Text;
using Microsoft.Xrm.Sdk;
using Microsoft.Xrm.Sdk.Client;
using System.ServiceModel.Description;
using Microsoft.Xrm.Sdk.Query;
using Microsoft.Crm.Sdk.Messages;
using Microsoft.Xrm.Sdk.Messages;
using Microsoft.Xrm.Sdk.Metadata;

namespace CRMConsoleApp
{
    /// <summary>
    /// Program Class
    /// </summary>
    public class Program
    {
        /// <summary>
        /// Main method
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            IOrganizationService organizationService = ConnectCRM();
            if (organizationService != null)
            {
                Guid currentUserGuid = ((WhoAmIResponse)organizationService.Execute(new WhoAmIRequest())).UserId;
                if (currentUserGuid != Guid.Empty)
                {
                    Console.WriteLine("User GUID: " + currentUserGuid.ToString());
                }
            }
        }
        /// <summary>
        /// Connecting to CRM
        /// </summary>
        /// <returns>IOrganization Service</returns>
        public static IOrganizationService ConnectCRM()
        {
            IOrganizationService organizationService = null;
            String username = "******@******.onmicrosoft.com";
            String password = "******";
            try
            {
                ClientCredentials clientCredentials = new ClientCredentials();
                clientCredentials.UserName.UserName = username;
                clientCredentials.UserName.Password = password;
                //ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
                organizationService = (IOrganizationService) new OrganizationServiceProxy(new Uri("https://******.crm.dynamics.com/XRMServices/2011/Organization.svc"), null, clientCredentials, null);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception caught - " + ex.Message);
                Console.ReadLine();
            }
            return organizationService;
        }
    }

}

Comments

Popular posts from this blog

Validate an email input in a Canvas Application | PowerApps

Validate an email input in a Canvas Application | PowerApps In this post let us see, how to Validate an email input in a Canvas Application UI Validations helps us to ensure, valid data is received from the End User to complete an operation helps end user to provide right information the validation action depends on the type of the input control for Text Input Control - mostly we go with "OnChange" for check box control - "OnCheck and On uncheck" for Drop Down and Combo Box Controls - "OnChange" or "OnSelect" etc., Now, let us see how can we validate an email input, a phone number input and a name input. How to validate an email input value is valid? We can leverage "Regex" (Regular Expressions) to valid user inputs. Let us consider the Email Input Control Name as -  txtEmail.Text. OnChange of this Control let us i

How to create a "pop-up box" in PowerApps

in this post, let us see how to create a Pop-Up in Canvas App required controls: rectangular icon label buttons - 2 take a "rectangular icon" and make it screen size update it's "Fill" - with RGBA(175, 191, 224, 0.5) . Take another "rectangular icon" and adjust it to center Take "label" - and add required text (Eg: "do you want to proceed?") Take two buttons. Update text of Button1 to "OK" and other to "Cancel" On Click of the respective control (to open the pop-up), add this expression : UpdateContext({locOpenPopup:true}) select "cancel" and "ok" button and add UpdateContext({locOpenPopup:false}) on "OnSelect" property. add appropriate actions on "cancel&quo

Success confirmation on a record submission - Canvas Application

In this post let us see, how to show a successfully submitted record's data back on to the form, as a confirmation. Take two screens  Home Screen Success Screen On Home Screen: Take a Form Control on the Home Screen and map it to respective entity. In this post we are mapping it to Registrations entity. Take a Button Control and input the below expression, to create records into Registrations Entity. SubmitForm( frmRegistration ) Now, let us implement how to redirect the user to Success Message screen to successful record submission. In order to achieve this, we are going to make use of one of the Form Control's properties - OnSuccess. So, OnSuccess we are going to implement Success Screen navigation as below Navigate(' Success Screen ')   Success Screen Take a label to show - success message, as below "Registration was successful. Registration Id: " & frmRegistration .LastSubmit.'Registration Number' LastSubmit  property of a From Control helps u