dataverse-plugins

Create, register, and deploy Dataverse plugins with C# and pac CLI.

56|16|Updated Feb 12, 2026
One-click install
npx skills add https://github.com/DanielKerridge/claude-code-power-platform-skills --skill dataverse-plugins
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dataverse-plugins
Source: https://github.com/DanielKerridge/claude-code-power-platform-skills/tree/main/dataverse-plugins
Command: npx skills add https://github.com/DanielKerridge/claude-code-power-platform-skills --skill dataverse-plugins

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Dataverse plugin development is complex, requiring correct pipeline stages, safe execution, robust error handling, and reliable deployment. This skill provides a comprehensive guide and templates to design, implement, register, and deploy Dataverse plugins with best practices.

Core Features & Use Cases

  • Guidance on implementing IPlugin in C# with Execute, including best practices for error handling and tracing.
  • Detailed coverage of Dataverse pipeline stages (PreValidation, PreOperation, PostOperation) and appropriate use cases.
  • Strategies for using entity images (PreImage/PostImage) to minimize retrievals and optimize performance.
  • Registration and deployment patterns using Plugin Registration Tool (PRT) or pac CLI, including step configuration and image registration.
  • Common patterns and defensive programming practices (validation, auto-numbering, cascading updates, and robust logging).

Quick Start

Register a simple plugin that validates a Create operation and logs a trace message.

Frequently Asked Questions about dataverse-plugins

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I register a Dataverse plugin for a specific execution pipeline stage?

You register Dataverse plugins by configuring steps for execution pipeline stages like PreValidation, PreOperation, or PostOperation using the Plugin Registration Tool or pac CLI to handle Create, Update, and Delete events.

What is the difference between PreImage and PostImage entity images in Dataverse plugins?

PreImage and PostImage entity images in Dataverse plugins capture entity state before and after an operation. Using these images minimizes extra data retrievals and optimizes plugin performance by providing necessary context directly within the execution pipeline.

How do I handle errors and tracing in a C# Dataverse plugin?

Error handling and tracing in a C# Dataverse plugin involve implementing the IPlugin interface with robust logging using the tracing service. Defensive programming practices ensure validation failures and execution errors are captured without crashing the server.

Can I deploy Dataverse plugins using pac CLI instead of the Plugin Registration Tool?

Yes, you can deploy Dataverse plugins using pac CLI as an alternative to the Plugin Registration Tool. Both tools support step configuration and image registration for server-side plugin deployment in Power Platform projects.

What are common plugin development patterns for Power Platform Dataverse?

Common Dataverse plugin development patterns include auto-numbering, cascading updates, and robust validation. These patterns rely on defensive programming and proper execution pipeline stage selection to ensure safe server-side logic execution.

When should I use PreValidation versus PostOperation stages in a Dataverse plugin?

Use the PreValidation stage for early validation before database transactions, and PostOperation for actions modifying related data after the core operation. Selecting the correct execution pipeline stage ensures safe execution and optimal performance.