dotnet restore on a solution does not trigger project-level BeforeTargets="Restore" hooks.
It only triggers a package restore operation, ignoring other custom MSBuild logic.
To run your download logic, invoke restore on the individual project or invoke your custom target explicitly.