diff --git a/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/NewAzureResourceCmdlet.cs b/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/NewAzureResourceCmdlet.cs
index 0b3a3ddad57f..05b8ca0f26a5 100644
--- a/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/NewAzureResourceCmdlet.cs
+++ b/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/NewAzureResourceCmdlet.cs
@@ -129,7 +129,7 @@ protected override void OnProcessRecord()
var result = this.GetLongRunningOperationTracker(activityName: activity, isResourceCreateOrUpdate: true)
.WaitOnOperation(operationResult: operationResult);
- this.TryConvertAndWriteObject(result, this.OutputObjectFormat.Value);
+ this.TryConvertToResourceAndWriteObject(result, this.OutputObjectFormat.Value);
});
}
diff --git a/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/ResourceManagerCmdletBase.cs b/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/ResourceManagerCmdletBase.cs
index 6eed73f61fb6..62f0e6985864 100644
--- a/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/ResourceManagerCmdletBase.cs
+++ b/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/ResourceManagerCmdletBase.cs
@@ -277,6 +277,24 @@ protected void TryConvertAndWriteObject(string resultString, ResourceObjectForma
}
}
+ ///
+ /// Writes the object
+ ///
+ /// The result as a string
+ /// The
+ protected void TryConvertToResourceAndWriteObject(string resultString, ResourceObjectFormat objectFormat)
+ {
+ Resource resultResource;
+ if (resultString.TryConvertTo>(out resultResource))
+ {
+ this.WriteObject(resultResource.ToPsObject(objectFormat));
+ }
+ else
+ {
+ this.WriteObject(resultString);
+ }
+ }
+
///
/// Writes a object as a .
///
diff --git a/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/SetAzureResourceCmdlet.cs b/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/SetAzureResourceCmdlet.cs
index 6287c131833a..d47782fbf631 100644
--- a/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/SetAzureResourceCmdlet.cs
+++ b/src/ResourceManager/ResourceManager/Commands.ResourceManager/Cmdlets/Implementation/SetAzureResourceCmdlet.cs
@@ -123,8 +123,8 @@ protected override void OnProcessRecord()
var activity = string.Format("{0} {1}", this.ShouldUsePatchSemantics() ? "PATCH" : "PUT", managementUri.PathAndQuery);
var result = this.GetLongRunningOperationTracker(activityName: activity, isResourceCreateOrUpdate: true)
.WaitOnOperation(operationResult: operationResult);
-
- this.TryConvertAndWriteObject(result, this.OutputObjectFormat.Value);
+
+ this.TryConvertToResourceAndWriteObject(result, this.OutputObjectFormat.Value);
});
}