【发布时间】:2015-06-26 22:03:07
【问题描述】:
我为托管在 ASP.NET 4.5 Web 应用程序中的 WCF 服务创建了一个 Web 部署包(一个 ZIP 文件)。当我尝试部署包时,出现以下错误:
Child object 'environmentVariables' cannot be added to object 'add'.
The 'add' provider may not support this deployment.
堆栈跟踪是:
Microsoft.Web.Deployment.DeploymentException: Child object 'environmentVariables' cannot be added to object 'add'. The 'add' provider may not support this deployment.
at Microsoft.Web.Deployment.DeploymentObject.AddChild(DeploymentObject source, Int32 position, DeploymentSyncContext syncContext)
at Microsoft.Web.Deployment.DeploymentSyncContext.HandleAddChild(DeploymentObject destParent, DeploymentObject sourceObject, Int32 position)
at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source)
at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenNoOrder(DeploymentObject dest, DeploymentObject source)
at Microsoft.Web.Deployment.DeploymentSyncContext.HandleAddChild(DeploymentObject destParent, DeploymentObject sourceObject, Int32 position)
at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source)
at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenNoOrder(DeploymentObject dest, DeploymentObject source)
at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source)
at Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DeploymentObject destinationObject, DeploymentObject sourceObject)
at Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable, Nullable`1 syncPassId, String syncSessionId)
at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentWellKnownProvider provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
at Microsoft.Web.Deployment.UI.InstallProgressWizardPage.OnWorkerDoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
我还没有弄清楚如何解决这个问题,但我注意到部署包 ZIP 文件中的 archive.xml 有一个 <environmentVariables> 元素嵌套在 <add> 元素内,该元素嵌套在 @987654325 内@元素。
源 IIS 站点位于 IIS Express(版本 10,因为我还安装了 Visual Studio 2015 RC)。目标 IIS 版本是 7.5 (Windows Server 2008 R2)。
Web 部署包是在 Windows 7 上运行的 Visual Studio 2013 中创建的。在 Programs and Features 中安装的 WebDeploy 版本是 3.6 (3.1238.1953)。
有谁知道如何解决或解决这个问题?
【问题讨论】:
-
我发现如果我手动编辑部署包内的archive.xml文档以删除
<environmentVariables>元素,部署就可以工作了。
标签: iis visual-studio-2013 iis-express visual-studio-2015 webdeploy