当我使用"发布为Azure WebJob"使用Visual Studio 2013 / update 4,我在标题中收到错误。
答案 0 :(得分:41)
通过从.pubxml文件中删除以下标记来解决此问题。删除标记后必须退出/重新启动VS(或VS将其重新添加)。
<ItemGroup>
<MSDeployParameterValue Include="$(DeployParameterPrefix)DefaultConnection-Web.config Connection String" />
</ItemGroup>
答案 1 :(得分:15)
答案 2 :(得分:11)
在Project根目录中创建一个Parameters.xml文件,其中包含以下内容:
<?xml version="1.0" encoding="utf-8" ?>
<parameters>
<parameter name="DefaultConnection-Web.config Connection String"
description="DefaultConnection"
defaultValue="Server=tcp:x.database.windows.net,1433;Database=x_db;User ID=x@y;Password=z;Trusted_Connection=False;etc." tags="" />
</parameters>
此处还可以添加所有其他缺少的配置元素。
答案 3 :(得分:4)
我有Visual Studio 2015 Update 3,我遇到了同样的问题。我发现对我有用的解决方案如下:
1)打开属性 - &gt;下的* .pubxml文件发布个人资料。
2)在PublishDatabaseSettings部分中查找Path属性:
<PublishDatabaseSettings>
<Objects xmlns="">
<ObjectGroup Name="eRecall.ETL.Models.erecallContext" Order="1" Enabled="False">
<Destination Path="" />
<Object Type="DbCodeFirst">
<Source Path="DBContext" DbContext="eRecall.ETL.Models.erecallContext, eRecall.ETL" />
</Object>
</ObjectGroup>
</Objects>
</PublishDatabaseSettings>
3)将Path属性值设置为以下值:
<PublishDatabaseSettings>
<Objects xmlns="">
<ObjectGroup Name="eRecall.ETL.Models.erecallContext" Order="1" Enabled="False">
<Destination Path="{deployment connection string}" />
<Object Type="DbCodeFirst">
<Source Path="DBContext" DbContext="eRecall.ETL.Models.erecallContext, eRecall.ETL" />
</Object>
</ObjectGroup>
</Objects>
</PublishDatabaseSettings>
4)删除Azure作业收集计划程序中的现有webjob部署。
5)重新部署webjob,从调度程序重新运行webjob,它开始没有问题!
希望这有帮助。