【发布时间】:2014-09-04 11:07:03
【问题描述】:
我正在使用msdeploy 通过teamcity 部署asp.net-mvc Web 应用程序。
我正在使用paramaters.xml 文件来操作我的应用程序的web.config,特别是应用程序settings 部分。
我有一些设置,其中只有特定环境的值才有效,其余时间该值应为空白(即,属性应仅在生产中具有值)。但是,当我 not 指定值时,MSDeploy 会给我这个异常:
Microsoft.Web.Deployment.DeploymentException:
The 'facebookUserToken' argument cannot be null or empty.
at Microsoft.Web.Deployment.DeploymentSyncParameterValidation.Validate(String parameterName, String parameterValue)
at Microsoft.Web.Deployment.DeploymentSyncParameter.set_Value(String value)
at Microsoft.Web.Deployment.DeploymentSyncParameterCollection.LoadFromFile(XPathNavigator nav, String fileName, Boolean ignoreExtraSetParameters)
at Microsoft.Web.Deployment.DeploymentSyncParameterCollection.Load(Stream stream, String fileName, Boolean ignoreExtraSetParameters)
at Microsoft.Web.Deployment.DeploymentSyncParameterCollection.Load(String fileName, Boolean ignoreExtraSetParameters)
at MSDeploy.MSDeploy.HandleSetParameters(DeploymentObject sourceObject, Random random)
at MSDeploy.MSDeploy.ExecuteWorker()
at MSDeploy.MSDeploy.Execute()
at MSDeploy.MSDeploy.Main(String[] unusedArgs)
如何配置 MSDeploy 以允许 参数 具有空值?
web.config:
<applicationSettings>
<SO.Example>
<setting name="FacebookUserToken" serializeAs="String">
<value></value>
</setting>
</SO.Example>
</applicationSettings>
parameters.config:
<parameter name="facebookUserToken" description="" defaultValue="">
<parameterEntry kind="XmlFile" scope="Web.config"
match="XPath removed for readability">
</parameterEntry>
</parameter>
【问题讨论】:
标签: msdeploy asp.net-mvc teamcity web.config c# asp.net-mvc teamcity msdeploy web-config