I am trying to setup a website and webjob, but get an error everytime I try to publish the webjob independently of the website (i.e. Selecting Publish as Azure WebJob
Reason of the problem
Change the name of the connection string in the Web.Config or/and adding a new connection string to the Web.Config.
Solution
Press the settings link and from the pop-up window select the 'Settings' Tab
Uncheck the use this connection string at runtime
from all your connection strings.
Save
button to close the the window. (No need to Restart Visual Studio)NOTE
I am using VS 2017
Just for Note
After I did the previous steps, I noticed that the .pubxml file changed automatically. here is the difference which has been made (automatically without any interference from me)
So I think this is better way because it is easier for developer and also it let the visual studio to solve its problems himself, without forcing it for specific thing.
I found that providing a value for
<Destination Path="" />
in your publish profile pubxml file got rid of the issue. This can usually be found in \Properties\PublishProfiles. You probably have something like:
<PublishDatabaseSettings>
<Objects xmlns="">
<ObjectGroup Name="Context" Order="1" Enabled="False">
<Destination Path="" />
<Object Type="DbCodeFirst">
<Source Path="DBMigration" DbContext="Context, DAO" MigrationConfiguration="Context.Migrations.Configuration, DAO" Origin="Convention" />
</Object>
</ObjectGroup>
</Objects>
</PublishDatabaseSettings>
Changing it to the following fixed it for me:
<PublishDatabaseSettings>
<Objects xmlns="">
<ObjectGroup Name="Context" Order="1" Enabled="False">
<Destination Path="{deployment connection string}" />
<Object Type="DbCodeFirst">
<Source Path="DBMigration" DbContext="Context, DAO" MigrationConfiguration="Context.Migrations.Configuration, DAO" Origin="Convention" />
</Object>
</ObjectGroup>
</Objects>
</PublishDatabaseSettings>
Hope that helps.
I found that deleting the obj
directory within the WebJob project will clear the staging area in which the WebJob package to be published is being built. Publish was then successful.