plugins
Installation
SKILL.md
Skill: Dataverse C# Plugins
When to Use
Trigger when building, debugging, or reviewing Dataverse plugins — server-side C# code that executes in response to Dataverse operations (create, update, delete, retrieve, custom API calls).
When to Use Plugins vs Alternatives
| Scenario | Use | Why |
|---|---|---|
| Synchronous validation before save | Plugin (Pre-Validation/Pre-Operation) | Real-time, blocks save on failure |
| Auto-numbering on create | Plugin (Pre-Operation) | Set value before record commits |
| Complex calculated fields | Plugin (Post-Operation sync) | Runs after save, same transaction |
| Cascading updates to child records | Plugin (Post-Operation async) | Avoid timeout on large datasets |
| Long-running process (>2 min) | Power Automate | Plugins have 2-minute timeout |
| Orchestrate multiple external systems | Power Automate | Built-in connectors, retry, monitoring |
| Reusable API callable from apps | Custom API + Plugin | Typed inputs/outputs, callable from anywhere |
| Complex business logic from Code App | Custom API | Better than raw HTTP from client |