我已经在我现有的网站上添加了一个webjobs sdk项目 . 该网站作为一个天蓝色的应用程序服务运行 . 我总是通过在线安装Visual Studio中的新版本并从那里部署到我的azure网站来完成构建和部署 . 最近我在同一个解决方案中创建了这个webjob项目,基于这个webjobs-list.json生成并放入网站项目应该导致webjob也在部署期间与网站一起部署(或者说文档说) . 发生的事情是,当它部署时,我看看app_data \ jobs \ continuous中的内容,不是我期望的二进制文件和可执行文件,它是已经复制到那里的实际源代码/项目文件 . 显然这不会运行,它不应该在我的网站上抛出源代码 .

我还必须在Visual Studio online中更改我的发布定义,只查找[我的网站项目名称] .zip,而不仅仅是* .zip,因为否则我会从发布中收到错误指示:错误:不止一个包与指定的模式匹配 . 请限制搜索模式 .

...这似乎是因为构建过程不仅为我的网站创建了一个zip文件,而且还为webjobs项目创建了一个 . 从我的理解和阅读,我应该改变我的发布只是寻找网站的zip文件,并忽略其他的zip文件,只是让它部署,它应该都工作正常,但再次,什么被复制到我在网站上的jobs文件夹不是webjob的二进制文件或可执行文件,它是实际的源文件 .

我怎样才能使用站点而不是源文件来部署二进制文件和可执行文件?

我能找到的另一件事就是从web项目中删除webjobs-list.json文件,这样它们就不再链接在一起了,这导致构建不再用我的web作业项目源文件填充app_data \ jobs \ continuous部署时,并在我的发行版定义中创建一个额外的任务来获取和部署在构建期间创建的另一个zip文件(对于webjob项目,它包含带有这些二进制文件的调试文件,无论出于何种原因) . 然而,我读到的所有内容都告诉我,这不应该被完成,它应该只是工作而不必我这样做 .

编辑:

我的Web项目是我使用VS 2013创建的MVC 5项目.web jobs项目使用2.0.0.0版本的webjobs sdk .

构建和发布定义,我按照本文中的步骤创建:

https://www.visualstudio.com/en-us/docs/build/apps/cd/deploy-webdeploy-webapps

在我关注这篇文章后,我做的唯一额外的事情是在我的发布定义中,我更改了包或文件夹字段以查找[my mvc web project name] .zip,而不是* .zip,否则我会收到错误上面提到的消息 .