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 (19 chapters)
Title Page
Credits
Foreword
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Logging error from your customization


Now that we have refactored our code to allow dependency injection, we can implement a custom login library to log details using a mechanism different from the Dynamics 365 ITracingService interface.

In this recipe, we will implement a custom logging library that logs to both the Dynamics 365 ITracingService interface as well as a CRM entity, which in turn writes to an Azure Service Bus.

Getting ready

Since we are building on top of an already layered code, we will be reusing the refactored plugin from the first recipe in this chapter, Refactoring your plugin using a three-layer pattern. Alternatively, you can start from scratch. If you are building your own plugin, follow the steps from the first recipe to mimic a structure similar to ours.

From an Azure perspective, you will need an existing Azure Service Bus queue, as described in Chapter 5, External Integration, Setting up an Azure Service Bus endpoint. You will need the plugin registration tool to set...