Skip to content

Contributor Guide

Cheena Malhotra edited this page Sep 11, 2026 · 1 revision

Contributor guide

Home / Contribute

Find the right area, agree on scope, and make a focused change.

Read CONTRIBUTING and the contribution workflow. Discuss substantial features before implementation; start with a minimal reproduction for a bug.

A small map of the repository

Area Where to look
Driver implementation Unified source
Public API contracts Reference project and API files
Authentication extensions Extensions projects
Driver tests Tests
Examples and API documentation Documentation
Build and CI build.proj and pipelines

At a high level, SqlConnection manages connection state and pooling; SqlCommand executes work; SqlDataReader exposes results; the TDS parser handles the wire protocol; SNI provides networking.

Implementation changes belong in the unified source tree. Public API contracts live in the separate ref project; do not confuse those with implementation entry points.

Build and test without stale wiki commands

Follow BUILDGUIDE for the required SDK, local tools, and build.proj targets. Follow TESTGUIDE for server prerequisites, configuration, and test selection.

Use focused coverage for changed behavior, including both sync and async paths where relevant. Do not assume a test category is server-free based solely on its name. API changes require the corresponding reference contracts and documentation.

Submit a useful change

Keep the change focused, describe the user-visible behavior, link its issue, and include relevant regression coverage. Use the coding style and review process.

For a documentation improvement, identify the canonical home: customer-facing concepts and walkthroughs in the ADO.NET driver documentation on Microsoft Learn, contributor build/test detail in the repository, or migration/navigation guidance in this wiki. Avoid creating competing instructions.

Next: browse issues and milestones.

Clone this wiki locally