protected void InstallPackageToProject(Project project, PackageItem item, bool includePrerelease)
{
IProjectManager projectManager = null;
try
{
projectManager = PackageManager.GetProjectManager(project);
// make sure the package is not installed in this project before proceeding
if (!projectManager.IsInstalled(item.PackageIdentity))
{
RegisterPackageOperationEvents(PackageManager, projectManager);
PackageManager.InstallPackage(projectManager, item.Id, item.PackageIdentity.Version, ignoreDependencies: false, allowPrereleaseVersions: includePrerelease, logger: this);
}
}
finally
{
if (projectManager != null)
{
UnregisterPackageOperationEvents(PackageManager, projectManager);
}
}
}