diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs b/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs index 1dad24b1f7..a94979e396 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs @@ -45,7 +45,12 @@ namespace ICSharpCode.PackageManagement public bool AllowPrereleaseVersions { get; set; } public FrameworkName ProjectTargetFramework { - get { return Project.TargetFramework; } + get { + if (Project != null) { + return Project.TargetFramework; + } + return null; + } } public virtual bool HasPackageScriptsToRun() diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs b/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs index 07cba71416..e970e6adeb 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs @@ -93,7 +93,7 @@ namespace ICSharpCode.PackageManagement.Scripting void SetPropertyInSharpDevelopProject(ProjectPropertyElement msbuildProjectProperty) { - sharpDevelopProject.SetProperty(msbuildProjectProperty.Name, msbuildProjectProperty.Value); + sharpDevelopProject.SetProperty(msbuildProjectProperty.Name, msbuildProjectProperty.Value, treatPropertyValueAsLiteral: false); } bool HasMSBuildProjectPropertyBeenUpdated(ProjectPropertyElement msbuildProjectProperty, ProjectPropertyElement sharpDevelopProjectProperty) diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll b/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll index d6fb3c1bf3..c94ef79caa 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll differ diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll index 7cdc512dc5..f3d952792b 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll differ diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll index da3a305ee1..b8649b3e7f 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll differ diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe index 324daa842c..25e84bd78c 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe differ diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs index ffef5bc7b7..dde4860024 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs @@ -183,5 +183,15 @@ namespace PackageManagement.Tests Assert.AreEqual(expectedTargetFramework, targetFramework); } + + [Test] + public void ProjectTargetFramework_NullProject_ReturnsNull() + { + var installAction = new InstallPackageAction(null, new FakePackageManagementEvents()); + + FrameworkName targetFramework = installAction.ProjectTargetFramework; + + Assert.IsNull(targetFramework); + } } } diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs index 3989986081..f9fe8ba509 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs @@ -260,5 +260,17 @@ namespace PackageManagement.Tests.Scripting Assert.IsFalse(propertiesMerger.Result.AnyPropertiesChanged()); } + + [Test] + public void Merge_MSBuildProjectHasNewPropertyAddedWithEncodableCharacters_PropertyAddedToSharpDevelopProjectWithoutEncodingCharacters() + { + var propertyGroup = msbuildProject.Xml.AddPropertyGroup(); + propertyGroup.SetProperty("Test", "$(Value)"); + + Merge(); + + string value = sharpDevelopProject.GetUnevalatedProperty("Test"); + Assert.AreEqual("$(Value)", value); + } } }