0

我有一个使用命令 Get-AzurePublishSettingsFile 获得的新发布设置文件

当我运行以下命令时:

Import-AzurePublishSettingsFile -SubscriptionDataFile "path to publishsettings"

我收到此错误:

    Import-AzurePublishSettingsFile : Error in line 1 position 14. Expecting element 'ProfileData' from namespace 'http://schemas.datacontract.org/2004/07/Microsoft.WindowsAzure.Comman
ds.Utilities.Common'.. Encountered 'Element'  with name 'PublishData', namespace ''. 
At line:1 char:1
+ Import-AzurePublishSettingsFile -SubscriptionDataFile "path to publishsettings ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [Import-AzurePublishSettingsFile], SerializationException
    + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.ImportAzurePublishSettingsCommand

看起来 powershell cmdlet 期望看到一个具有不同结构的文件,但我不知道在哪里可以得到一个。

我在这里做错了什么还是 Azure Powershell 有问题?

Azure 模块版本为 0.8.2

4

3 回答 3

1

对于你的具体问题,我没有答案。但我可能有更好的选择,您可以尝试解决原始问题。

请参阅ArgumentNullException - Get-AzureService

该帖子描述了以下两个选项:

您可以使用普通的管理门户登录凭据,而不是使用发布设置文件进行管理 API 身份验证。这通常是使用 Azure powershell cmdlet 的更好选择。

如果这对您不起作用,请参阅上面的链接,了解如何清除缓存的订阅配置文件,并查看这是否解决了您看到的 Import-AzurePublishSettingsFile 问题。

于 2014-05-29T04:11:33.217 回答
0

我遇到了同样的问题。原来我使用了错误的参数开关来指定设置文件。

仔细检查您使用的是 -PublishSettingsFile 参数而不是 -SubscriptionDataFile ,如示例中所示。

有关每个参数的说明,请参阅下面的 powershell 帮助摘录。

Parameters
-PublishSettingsFile <String>
   Specifies the full path and filename for the .publishsettings file for the Windows Azure account.  

    Required?                    true
    Position?                    1
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false

-SubscriptionDataFile <String>
    Specifies the path to a file where the subscription data is stored. This parameter is optional. If it is not provided, the subscription data is imported into a default file in the user's profile.  

    Required?                    false
    Position?                    named
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false
于 2014-06-03T00:06:12.987 回答
0

经过几次尝试,我能够完成这项工作。

您需要以管理员身份启动 PowerShell,清楚地布置分配下载文件的文件名的路径。

一旦我这样做了,它就运作良好。

于 2017-03-18T06:55:43.947 回答