
Latest · Jul 30, 2026
CSOM vs SharePoint REST vs Graph: My Pick-One Playbook
Learn when to use CSOM, SharePoint REST or Microsoft Graph for SharePoint work, and which operations each one silently refuses to do.
Every post - war stories from .NET, Azure, Microsoft Graph and SharePoint projects.

Latest · Jul 30, 2026
Learn when to use CSOM, SharePoint REST or Microsoft Graph for SharePoint work, and which operations each one silently refuses to do.

Learn why I'm still on PnP.Framework instead of PnP Core, the two blockers holding the migration back, and what has to land before I make the jump.
#sharepoint

Learn how to keep third-party API keys out of the browser by proxying SPFx web part calls through an Azure Function that swaps in the secret server-side.
#sharepoint

Learn how to checkpoint a Durable Functions orchestration so a failed SharePoint provisioning run resumes where it stopped instead of starting over.
#sharepoint

Learn what Azure Durable Functions are and what they can do, using a SharePoint site provisioning workflow as a real-world example.
#azure-functions

Learn how to forward the browser's If-None-Match header to Azure Blob Storage with BlobRequestConditions, so unchanged files never leave storage at all.
#csharp

Learn how a single Azure Function with a catch-all route can proxy an entire static website out of a private Blob Storage container, with auth in front of every file.
#csharp

Learn how to store Outlook add-in user preferences in the OneDrive App Folder via the Graph approot endpoint, so settings roam across every device.
#microsoft-graph

Learn how to fall back to the Microsoft Graph MIME endpoint when getAsFileAsync isn't available in Outlook on mobile, so your add-in keeps working everywhere.
#microsoft-graph

Learn how to get MSAL tokens inside Outlook on mobile with Nested App Auth (NAA), from the brk-multihub redirect URI to acquireTokenSilent with a loginHint.
#authentication

Learn how to speed up SharePoint CSOM with five proven techniques - batching, CAML joins, change detection, server-side exception handling, and fast taxonomy loading.
#sharepoint

Learn why declaring a low Mailbox requirement set in your Outlook add-in manifest is the key to mobile support, and how to feature-detect newer APIs at runtime.
#outlook-add-ins

After testing with DevProxy, I found that monolithic PnP templates silently destroy your retry strategy. Here's what I learned.
#sharepoint

Learn how to create SharePoint News Link pages with a banner image using the Microsoft Graph Beta SDK in C# — including the multipart upload the official documentation leaves completely undocumented.
#sharepoint

Learn how to create Microsoft 365 groups programmatically with the Graph SDK in C# without sending a welcome email flood to every member.
#sharepoint

An undocumented but effective approach to dramatically speed up CSOM taxonomy field loading when dealing with SharePoint list items that have many terms.
#sharepoint

The SharePoint API call that wasted resources is now optimized with smart change detection, reducing unnecessary updates and costs.
#sharepoint

Discover how SharePoint's ExceptionHandlingScope can optimize your API calls, reduce costs, and enhance performance with server-side exception handling.
#sharepoint

Learn how to effectively debounce SharePoint webhooks to optimize performance and reduce unnecessary operations when users frequently click save.
#sharepoint
Learn smart retry logic for Microsoft Graph batching to optimize API calls, reduce throttling, and enhance user experience.
#sharepoint

How to handle Graph batching when downloading file content and mapping responses back to original requests
#sharepoint

Learn how to dramatically improve CSOM performance by batching operations instead of executing them one by one
#sharepoint

Discover how to simulate Microsoft Graph and SharePoint throttling locally using DevProxy, and prevent production slowdowns before they happen.
#sharepoint

Learn how to efficiently query multiple SharePoint lists using CAML joins instead of multiple API calls to avoid throttling
#sharepoint

Quick setup guide for Microsoft Graph SDK using your existing app registration
#sharepoint

Learn to authenticate C# applications with PnP.Framework and Azure using certificates in this beginner's guide to app registration and permissions.
#sharepoint

Download files from SharePoint as a zip, as is possible through the UI
#sharepoint

We've all tried creating a SharePoint list without using Content Types from the start. It seems like the quick solution, but it can lead to challenges later when restructuring the list. This post explains why using Content Types from the beginning is a smart move that can save time and hassle in the long run.
#sharepoint


Implement logging only with a attribute on each method in a controller
#csharp

Easiest way to keep track of which changes have been made to an object, and likewise, who has carried out these changes.
#csharp

#sharepoint
No posts match — try another search or tag.