AlbanianXrm.CDSProj.Sdk
1.0.15
<Sdk Name="AlbanianXrm.CDSProj.Sdk" Version="1.0.15" />
#:sdk AlbanianXrm.CDSProj.Sdk@1.0.15
AlbanianXrm.CDSProj.Sdk
A visual studio sdk project based on the Microsoft provided .cdsproj project with support for Plugin Package dependencies. This project can be part of a Visual Studio solution and can be opened on visual studio
To use this just reference the Sdk using a specific version and the build system should get the definition from NuGet.
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="AlbanianXrm.CDSProj.Sdk/1.0.15">
</Project>
After your project references our SDK then you can add it as part of your visual studio solution with the dotnet sln YourSolution.sln add "path to your .cdsproj file"
Reference your plugin packages and PCFs normally using ProjectReference tags.
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="AlbanianXrm.CDSProj.Sdk/1.0.15">
<ItemGroup>
<ProjectReference Include="..\AlbanianXrm.OtherPluginPackage\AlbanianXrm.OtherPluginPackage.csproj" />
<ProjectReference Include="..\AlbanianXrm.PluginPackage\AlbanianXrm.PluginPackage.csproj" />
<ProjectReference Include="..\AlbanianXrm.YetAnotherPluginPackage\AlbanianXrm.YetAnotherPluginPackage.csproj">
<ManagedIdentityId>50d2aee4-08c4-4f5d-bb9b-9ce93923da42</ManagedIdentityId>
</ProjectReference>
<ProjectReference Include="..\AlbanianXrm.LinearInputPCF\AlbanianXrm.LinearInputPCF.pcfproj" />
</ItemGroup>
</Project>
Versioning Behavior
By default, the SDK reads the version from src/Other/Solution.xml and uses that value for both the solution version and plugin package version updates.
You can override this behavior in two ways:
- Pass
FileVersionduring build. - Enable Git-based versioning through Nerdbank.GitVersioning.
When both are used, FileVersion wins.
Enable Git Versioning
To use Nerdbank.GitVersioning for solution/plugin package version stamping, set EnableGitVersioning and reference the package:
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="AlbanianXrm.CDSProj.Sdk/1.0.15">
<PropertyGroup>
<EnableGitVersioning>true</EnableGitVersioning>
</PropertyGroup>
<ItemGroup Condition="'$(EnableGitVersioning)' == 'true'">
<PackageReference Include="Nerdbank.GitVersioning" Version="3.8.118" PrivateAssets="all" />
</ItemGroup>
</Project>
Version resolution order during build:
FileVersionproperty (if provided).- Nerdbank.GitVersioning (
GetBuildVersion) whenEnableGitVersioning=true. src/Other/Solution.xmlfallback.
The version of the packaged solution and plugins follows the precedence above and falls back to src/Other/Solution.xml when neither FileVersion nor Git versioning is available.
Managed Identities
If you want to use Managed Identities then specify the ManagedIdentityId property in your plugin package project or in the ProjectReference.
There is a target that makes sure that the pluginpackage.xml is properly regenerated on build.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.15 | 168 | 8/13/2026 |
| 1.0.14 | 162 | 8/12/2026 |
| 1.0.13 | 263 | 6/9/2026 |
| 1.0.12 | 261 | 6/2/2026 |
| 1.0.11 | 524 | 5/24/2026 |
| 1.0.10 | 276 | 5/20/2026 |
| 1.0.9 | 2,949 | 11/26/2025 |
| 1.0.8 | 577 | 11/5/2025 |
| 1.0.7 | 568 | 10/30/2025 |
| 1.0.6 | 572 | 10/29/2025 |
| 1.0.5 | 703 | 10/20/2025 |
| 1.0.4 | 612 | 10/13/2025 |
| 1.0.3 | 577 | 10/13/2025 |
| 1.0.2 | 582 | 9/23/2025 |
| 1.0.1 | 636 | 9/14/2025 |
| 1.0.0 | 520 | 9/13/2025 |
v1.0.15:
- - Enabled AccelerateBuildsInVisualStudio and did some minor related improvements.
v1.0.14:
- removed Microsoft.Build.NoTargets/3.7.56 dependency. Now applying the same logic using our fork so that we are in control.
v1.0.13:
- Added default project type which enables .cdsproj to be added using the following command `dotnet sln mySolution.sln add ...`
v1.0.12:
- Added support for Directory.props global package versioning
v1.0.11:
- Added support for Nerdbank.GitVersioning
- thanks Reza Niroomand (Microsoft MVP, @rezanid) for issuing a PR with the new feature.
v1.0.10:
- Solution Version is shown when packing solution.
- Avoids appending Publisher Prefix to already prefixed Plugin Package
- thanks Reza Niroomand (Microsoft MVP, @rezanid) for finding these issues and issuing a PR with the fixes.
v1.0.9:
- Fixed bug with plugin package not getting the right version sometimes (ex. 1.0.1.0 would throw).
- AppendTargetFrameworkToOutputPath set to false by default to preserve paths same as MS Package.
v1.0.8:
- Fixed bug incorrectly generating pluginpackage.xml file when no plugin packages are referenced.
v1.0.7:
- Improved support for ManagedIdentities in Plugins
v1.0.6:
- Added support for ManagedIdentity in plugins
v1.0.5:
- Regenerate pluginpackage.xml when packing plugin packages.
This might get deleted by doing pac solution sync
v1.0.4:
- correctly excluding _SetFileVersionOnSolution to prevent unintentional file update
v1.0.3:
- Updates solution version when FileVersion property is specified on build
v1.0.2:
- Fixed bug with cds projects that don't reference a plugin package project
v1.0.1:
- Improved packages documentation and icon
v1.0.0:
- First release of AlbanianXrm.CDSProj.SDK