The provided adapter pattern allows to convert any object to any other supported type, as provided by the registered adapters.
This package is a convenience grouping of all three separate pieces, for cases where you want to deploy all of them in a single project.
======= Example =======
IProject project = GetCurrentProject();
// say we need to use it as an MSBuild project, if possible
IMSBuildProject msbuild = project.As<IMSBuildProject>();
if (msbuild != null)
// do MSBuild stuff with it.
======= Adapters =======
public class ProjectToMsBuildAdapter : IAdapter<IProject, IMSBuildProject>
// Implement actual conversion.
The conversion behavior is now decoupled from the usage.
Install-Package Adapter -Version 1.1.1301.1418
dotnet add package Adapter --version 1.1.1301.1418
<PackageReference Include="Adapter" Version="1.1.1301.1418" />
paket add Adapter --version 1.1.1301.1418
#r "nuget: Adapter, 1.1.1301.1418"
// Install Adapter as a Cake Addin #addin nuget:?package=Adapter&version=1.1.1301.1418 // Install Adapter as a Cake Tool #tool nuget:?package=Adapter&version=1.1.1301.1418
* Additional support for source packages, like Adapter.Interfaces.Source,
which also use token replacement and adopt the containing project
* Initial version, with support for flexible matching of from and to types
* Support for MEF in separate Adapter.Composition package
* Proper split of: Adapter.Interfaces, Adapter.Sdk and Adapter (implementation).
This package is not used by any popular GitHub repositories.