2014-10-18 40 views
2

我遇到的问题是使用VS 2013的计划发布Webjob。我可以发布“随需应变”作业没有问题,但我希望使用计划。发布带有计划错误的Azure Webjob

这里是我下面得到的错误..

它看起来像发布时,它无法找到Microsoft.Web.WebJobs.Publish.Tasks.CreateScheduledWebJob。

我已经尽全力尝试对它进行排序,甚至将VS2013更新为版本3,添加了Nuget软件包,Azure SDK,发布SDK,Azure调度程序管理库,Azure服务管理库& Azure公共库。

采用不同的方法我已经创造了新的WebJob项目,

  1. 右键单击解决方案 - >添加新的项目 - >云 - >微软Azure WebJob
  2. 右键单击解决方案 - >添加新的项目 - >视窗桌面 - >控制台应用程序
  3. 右键网站 - >添加 - >新Azure的Webjob项目

C:\开发\依赖encies \ Microsoft.Web.WebJobs.Publish.1.0.0 \ tools \ webjobs.console.targets(80,5): 错误MSB4061: “Microsoft.Web.WebJobs.Publish.Tasks.CreateScheduledWebJob”任务可能不是 可以从 “C:\ Users \ Tony \ AppData \ Local \ assembly \ dl3 \ XDNO1P6L.QON \ HEVOMEZ0.AYO \ 587c592f \ a99a921c_5eeacf01 \ Microsoft.Web.WebJobs.Publish.Tasks.dll”实例化。

System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.WindowsAzure.Management.Scheduler, Version=1.0.0.0, 

文化=中性公钥= 31bf3856ad364e35' 或它 的一个依赖。该系统找不到指定的文件。 文件名: 'Microsoft.WindowsAzure.Management.Scheduler,版本= 1.0.0.0,文化=中性公钥= 31bf3856ad364e35' 在System.Reflection.RuntimeAssembly.GetExportedTypes(RuntimeAssembly 组件,ObjectHandleOnStack retTypes) 在的System.Reflection。 RuntimeAssembly.GetExportedTypes() 在Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.ScanAssemblyForPublicTypes() 在Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.GetLoadedTypeByTypeName(字符串 的typeName) 在Microsoft.Build.Shared.TypeLoader.GetLoadedType( Object cacheLock,Object loadInfoToTypeLock,ConcurrentDictionary2 cache, String typeName,AssemblyLoadInfo assembly) at Microsoft .Build.CommandLine.OutOfProcTaskAppDomainWrapperBase.ExecuteTask(IBuildEngine oopTaskHostNode,字符串TASKNAME,字符串taskLocation,字符串 taskFile,的Int32 taskLine,的Int32 taskColumn,AppDomainSetup appDomainSetup,IDictionary2 taskParams)

+0

对此的最新更新是我将MVC应用程序从MVC4升级到MVC5,并没有什么区别。我也更新了项目中的所有依赖关系,但仍然没有喜悦。 – 2014-10-25 07:48:35

回答

0

在我的情况下,“微软在webjob项目中引用了WindowsAzure.Management.Scheduler的3.0.0.0版本,但日志报告缺少1.0.0.0版本。添加以下行webjob项目的App.config解决了出版发行:

<runtime> 
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
    <assemblyIdentity name="Microsoft.WindowsAzure.Management.Scheduler" publicKeyToken="31bf3856ad364e35" /> 
    <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
    </dependentAssembly> 
</assemblyBinding> 
</runtime> 

的部分可以在某个标签中添加。

请允许我一个额外的笔记,这是不涉及您的问题。在发布预定的webjob时,我了解到可用的重复频率取决于网站配置。我无法在免费计划中使用1天的重复频率(根据我的计划计划缩放到标准)。免费计划显然只支持1天的重复(写作时间)。

希望这有助于进一步。

0

我补充说,并试图建立一个新的Webjob通过右键单击项目并选择添加 - >新Azure的WebJob项目,并得到了相同的

+0

这是为你工作吗? – 2017-03-03 20:56:39

+1

现在已经快三年了。我想我刚刚解决了这个问题 – TonyC 2017-03-13 17:37:36

+0

谢谢,最近我遇到了同样的问题,但它已修复。 – 2017-03-13 17:43:55

0

也许你能回避这整个问题,只是使用TimerTrigger调度呢?确保部署为触发的WebJob。

相关问题