Skip to content

Commit 416f413

Browse files
committed
Merge pull request #228 from markcowl/fixget
Fixing argument exception in empty profile with get-azuresubscription
2 parents dbae490 + 3abaf3e commit 416f413

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

src/Common/Commands.Profile/Subscription/GetAzureSubscription.cs

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ namespace Microsoft.WindowsAzure.Commands.Profile
3535
[OutputType(typeof(AzureSubscription))]
3636
public class GetAzureSubscriptionCommand : SubscriptionCmdletBase
3737
{
38-
public GetAzureSubscriptionCommand() : base(true)
38+
public GetAzureSubscriptionCommand()
39+
: base(true)
3940
{
4041

4142
}
@@ -64,8 +65,17 @@ public override void ExecuteCmdlet()
6465
switch (ParameterSetName)
6566
{
6667
case "ByName":
67-
WriteSubscriptions(ProfileClient.RefreshSubscriptions(Profile.Context.Environment)
68-
.Where(s => SubscriptionName == null || s.Name.Equals(SubscriptionName, StringComparison.InvariantCultureIgnoreCase)));
68+
IEnumerable<AzureSubscription> subscriptions = new AzureSubscription[0];
69+
if (Profile.Context != null && Profile.Context.Environment != null)
70+
{
71+
subscriptions = ProfileClient.RefreshSubscriptions(Profile.Context.Environment)
72+
.Where(
73+
s =>
74+
SubscriptionName == null ||
75+
s.Name.Equals(SubscriptionName, StringComparison.InvariantCultureIgnoreCase));
76+
}
77+
78+
WriteSubscriptions(subscriptions);
6979
break;
7080
case "ById":
7181
WriteSubscriptions(ProfileClient.GetSubscription(new Guid(SubscriptionId)));
@@ -86,7 +96,7 @@ public void GetDefault()
8696
if (defaultSubscription == null)
8797
{
8898
WriteError(new ErrorRecord(
89-
new InvalidOperationException(Resources.InvalidDefaultSubscription),
99+
new InvalidOperationException(Resources.InvalidDefaultSubscription),
90100
string.Empty,
91101
ErrorCategory.InvalidData, null));
92102
}
@@ -118,7 +128,7 @@ public void GetCurrent()
118128

119129
private void WriteSubscriptions(params AzureSubscription[] subscriptions)
120130
{
121-
WriteSubscriptions((IEnumerable<AzureSubscription>) subscriptions);
131+
WriteSubscriptions((IEnumerable<AzureSubscription>)subscriptions);
122132
}
123133

124134
private void WriteSubscriptions(IEnumerable<AzureSubscription> subscriptions)

0 commit comments

Comments
 (0)