#programming

Posts tagged with this topic.

Benchmark: TDS Endpoint vs QueryExpression vs FetchExpression

Nov 29, 2025

I read Mark Carrington's blog post about his latest findings on TDS Endpoint revisited, which can be found here. One of the key points that is interesting is his finding about the internal Dataverse message ExecutePowerBISql, which intersects with the function I created last time...

Geolocation in Power Apps: Translating Addresses and Validating Check-Ins

Oct 11, 2025

Hi Everyone, I'm back, and today, we will learn how to implement translating addresses to longitude and latitude (using Azure Maps API) and validating check-ins. For example, there will be a plan for the Salesperson to go to location X for Customer A. On the day itself, the...

Dataverse: C# extension to simplify how to get Custom API Input

Aug 2, 2025

I'm fairly certain that all of us agree that we are performing mundane code to obtain input parameters when developing custom APIs. For populating the context.PluginExecutionContext.InputParameters, we need to extract each parameter and cast the value to the correct data type,...

Dataverse: Updated ServiceClient Strategy For Better Performance

Mar 9, 2025

If you remember, I created this blog post on how to create a class that wrapped ServiceClient. I must do it because instancing a ServiceClient is expensive (around 2 seconds). Hence, I need to find a way to "store" it in memory and ensure it is always ready when I need to call...

Setup Github Workflow to generate Dataverse Entity Classes

Jan 25, 2025

As a person who cherishes "Early-Bound" so much, I want to ensure my team also uses it in the project. The step to generate the "Early-Bound" is not too complicated, especially after Microsoft Power Platform CLI (pac modelbuilder build). But, again, enforcing it on other team...

Dataverse ServiceClient: Comparing ExecuteAsync vs Execute

Jan 19, 2025

This is another benchmark blog post, in which I tried to upgrade the greatest snippet on how to do bulk insert, update, or delete (blog post by Mark Carrington that you can read here) with the async operation. As you know, the latest Dataverse ServiceClient supports async...

Benchmark: Comparing Pooling Setting in TDS Endpoints

Dec 7, 2024

We must construct the SQL Connection String when connecting to Dataverse TDS Endpoints via .NET code. The structure of it by default is just "Server={orgname}.crm.dynamics.com;Database={orgname};Persist Security Info=False;". When we talk about SQL connection strings, there are...

Dataverse: Bulk Performance Settings - Max Threads and Chunks

Nov 3, 2024

Currently, I'm still focusing on how to improve bulk processing in Dataverse. After implementing User Multiplexing, we will learn another consideration that we can apply which is the total threads and chunks of data per thread. Of course, some variables such as network speed,...

Dataverse: Create ServiceClient Strategy

Sep 15, 2024

I just realized creating ServiceClient is an expensive operation (I found one blog post that confirmed this problem even though this was an article from 2017). During one of the API call tests, almost half of the time was wasted on the creation of ServiceClient. Before, I always...