diff --git a/src/Shared/Microsoft.DotNet.Scaffolding.Shared/MsBuild/MsBuildProjectContextBuilder.cs b/src/Shared/Microsoft.DotNet.Scaffolding.Shared/MsBuild/MsBuildProjectContextBuilder.cs index 357b1f6fb..9117b2949 100644 --- a/src/Shared/Microsoft.DotNet.Scaffolding.Shared/MsBuild/MsBuildProjectContextBuilder.cs +++ b/src/Shared/Microsoft.DotNet.Scaffolding.Shared/MsBuild/MsBuildProjectContextBuilder.cs @@ -44,7 +44,8 @@ public IProjectContext Build() { _projectPath, $"/t:EvaluateProjectInfoForCodeGeneration", - $"/p:OutputFile={tmpFile};CodeGenerationTargetLocation={_targetLocation};Configuration={_configuration}" + $"/p:OutputFile={tmpFile};CodeGenerationTargetLocation={_targetLocation};Configuration={_configuration}", + "-restore" }) .OnErrorLine(e => errors.Add(e)) .OnOutputLine(o => output.Add(o)) diff --git a/src/Shared/Microsoft.DotNet.Scaffolding.Shared/ProjectModel/ProjectContextHelper.cs b/src/Shared/Microsoft.DotNet.Scaffolding.Shared/ProjectModel/ProjectContextHelper.cs index ad84b3acd..5cf9e338d 100644 --- a/src/Shared/Microsoft.DotNet.Scaffolding.Shared/ProjectModel/ProjectContextHelper.cs +++ b/src/Shared/Microsoft.DotNet.Scaffolding.Shared/ProjectModel/ProjectContextHelper.cs @@ -48,6 +48,12 @@ internal static IEnumerable GetPackageDependencies(string //"targets" gives us all top-level and transitive dependencies. "packageFolders" gives us the path where the dependencies are on disk. if (root.TryGetProperty(TargetsProperty, out var targets) && root.TryGetProperty(PackageFoldersProperty, out var packageFolderPath)) { + if (targetFramework.EndsWith("-windows")) + { + //tfm in project.assets.json is netX-windows7.0 instead of netX-windows + targetFramework = $"{targetFramework}7.0"; + } + if (targets.TryGetProperty(targetFramework, out var packages)) { packageDependencies = DeserializePackages(packages, packageFolderPath, targetFrameworkMoniker);