Book Image

Microsoft Dynamics 365 Extensions Cookbook

Book Image

Microsoft Dynamics 365 Extensions Cookbook

Overview of this book

Microsoft Dynamics 365 is a powerful tool. It has many unique features that empower organisations to bridge common business challenges and technology pitfalls that would usually hinder the adoption of a CRM solution. This book sets out to enable you to harness the power of Dynamics 365 and cater to your unique circumstances. We start this book with a no-code configuration chapter and explain the schema, fields, and forms modeling techniques. We then move on to server-side and client-side custom code extensions. Next, you will see how best to integrate Dynamics 365 in a DevOps pipeline to package and deploy your extensions to the various SDLC environments. This book also covers modern libraries and integration patterns that can be used with Dynamics 365 (Angular, 3 tiers, and many others). Finally, we end by highlighting some of the powerful extensions available. Throughout we explain a range of design patterns and techniques that can be used to enhance your code quality; the aim is that you will learn to write enterprise-scale quality code.
Table of Contents (12 chapters)

Consuming messages from an Azure Service Bus


Now that we have written the context to the Azure Service Bus, we need to consume this message. This recipe will focus on writing a console application that continuously listens to incoming messages, pops them off the Azure Service Bus queue, and reads the content of the Dynamics365 RemoteExecutionContext included in the message.

Getting ready

Starting with the required assemblies, you'll need the Microsoft.CrmSdk.CoreAssemblies as well as WindowsAzure.ServiceBus NuGet packages.

You can find the first one by searching for Dynamics Core Assemblies in your NuGet manager and the second one by searching for Azure Service Bus:

In order to connect to your Azure Service Bus queue, you will need the previously created Service Bus connection string (the RootManageSharedAccessKey connection string, not the queue shared access policy connection string) as well as its queue name.

How to do it...

  1. Create a new console application in Visual Studio with a namespace...