TFS Azure部署版本无法找到依赖程序集Microsoft.Exchange.WebServices.dll

时间:2013-10-29 19:49:51

标签: c# azure tfs webrole azure-deployment

在部署到Azure时,TFS上的我的Azure部署脚本始终无法找到程序集Microsoft.Exchange.WebServices.dll。

我总是收到以下警告:

  

项目'...'取决于以下程序集:C:\ a \ src \ Portal \ Dev \ packages \ EWS-Api-2.0.1.0.1 \ lib \ net35 \ Microsoft.Exchange.WebServices。 DLL。此程序集不在包中。要确保角色启动,请将此程序集添加为对项目的引用,并将Copy Local属性设置为true。

但是,我的持续集成构建脚本没有收到此警告。通过NuGet包EWS-Api-2.0将程序集添加到我的Web项目中。

我确认在程序集引用上将copy local设置为true,并且在项目文件中正确设置了提示路径,并且下面指定的路径已添加到TFS。

<Reference Include="Microsoft.Exchange.WebServices, Version=15.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\packages\EWS-Api-2.0.1.0.1\lib\net35\Microsoft.Exchange.WebServices.dll</HintPath>
</Reference>

我似乎有很多人在类似的问题上发帖,但我找到的解决方案都没有适用或纠正过这个问题。我使用Diagnostic日志记录运行构建,但我没有找到任何有价值的东西来指出可能导致问题的原因。

有人有任何建议吗?

1 个答案:

答案 0 :(得分:1)

虽然不是一个理想的解决方案,但我能够通过从Microsoft here下载32位版本的程序集来解决问题(不清楚nuget包是64位还是32位)。它仍然无法工作,因此我将其作为内容添加到项目中,并将“复制到输出目录”设置为“复制”,如果它更新且有效。

同样,我不认为这是一个理想的解决方案。但是,它确实为我解决了这个问题。