我有一个工作人员角色,其中包含对一些nuget包的引用,这些包会将一些所需的运行时文件作为构建后步骤放到项目bin文件夹中。

我面临的问题是这些文件没有被复制到已发布的工作人员角色,因为它们没有由工作人员角色.csproj跟踪

工作者角色.csproj:

...
<Import Project="[path-to-nupkg]\build\package.targets" Condition="Exists('[path-to-nupkg]\build\package.targets')" />

package.targets复制构建后的资源,因此构建后的辅助角色bin文件夹包括:

MyWorkerRole.dll
resource.txt
Resources\another_resource.txt

但是,打包用于部署的辅助角色时,WorkerRole.cspkg仅包含MyWorkerRole.dll

我试图通过将以下内容添加到我的.ccproj中来动态地向Windows Azure应用程序角色添加内容

  <Target Name="BeforeAddRoleContent">
    <ItemGroup>
      <AzureRoleContent Include="Resources\*">
        <RoleName>MyWorkerRole</RoleName>
      </AzureRoleContent>
    </ItemGroup>
  </Target>

但是该文件夹未删除,并且在打包过程中没有任何错误。

编辑:建议我尝试使用“ 角色内容文件夹” ,但是在我的情况下,问题是资源来自Nuget包。 因此至少在构建时间之前(实际上是作为构建后任务删除)才可用。

#1楼 票数:0 已采纳

我选中了“ 向Windows Azure应用程序角色动态添加内容” ,发现用于存储文件的其他文件夹应位于Azure云服务项目中,如下所示:

在此处输入图片说明

然后编辑您的云服务.ccproj并按如下所示覆盖BeforeAddRoleContent目标:

在此处输入图片说明

打包云服务项目后,可以按以下方式检查打包的内容:

在此处输入图片说明

根据您的要求,您可以使用构建事件并将文件复制到Azure云服务项目内的AdditionalContent文件夹中。

  ask by Assaf Israel translate from so

未解决问题?本站智能推荐:

2回复

在Azure云服务项目中发布内容文件

我有用C#编写的Azure云服务项目。 该项目包含Azure工作者角色。 我的工作者角色是引用在其中包含目录的另一个项目(在相同解决方案中)。 在此目录中,有10个HTML文件。 所有这些文件都标记有这些设置(文件设置): 建立动作: 内容 复制到输出目录: 如果较
1回复

从Azure上运行的辅助角色服务访问Sharepoint

当其他系统中的某些信息发生更改时,我需要更新有关Sharepoint的某些信息。 我这样做的方式(我没有选择,而是选择公司)是: 1.当事件在另一个系统中发生时,我向Azure ServiceBus队列发送一条消息: 这部分工作正常。 2.我创建了一个WorkerRole来读取
4回复

Azure-如何访问WorkerRole的内容文件?

我正在编写用于发送电子邮件的工作人员角色。 它具有一些电子邮件模板html文件,其build action = content并copy to output = Copy Always 如何从WorkerRole的代码访问这些文件? 我不想将这些文件存储在Blob中,因为我需要尽快
1回复

使服务在Azure辅助角色中运行

我有一个Windows服务,需要将它作为工作角色迁移到Azure。 在我的Azure解决方案中一切正常。 但是,当我上传所有内容时,只有Web角色启动。 辅助角色实例陷入卡在以下两个状态之间循环,而从未启动过。 等待角色开始... 稳定角色... 由于实例无法启动
1回复

如何检查辅助角色是否在Azure模拟器中运行

我想知道是否有办法检查工作者角色是否在模拟器中运行。 我有2个工作者角色,其中一个不应该在本地运行,但由于它们都在同一个Azure云项目中,因此它们都运行。 一种方法是使用#if !DEBUG并包围主循环内的所有代码,但感觉不对。 是否有类似ASP.Net的Request.IsLo
2回复

Microsoft.SqlServer.Types在Azure辅助角色上无法正常运行

我希望通过EntityFramework与Azure工作者角色中的SQL Server数据库进行通信来使用DbGeography。 据我了解,DbGeography在后台使用Microsoft.SqlServer.Types / SqlServerSpatial110.dll,所以为了让它在A
1回复

Azure中的SqlBulkCopy超时

我们在Azure中遇到了SqlBulkCopy的问题。 上下文如下:我们有一个大约有1000万行的表。 每行有大约15列。 我们正在将这些数据迁移到我们的新模型中,这需要拆分数据,因此包含15列的1行变为15行。 它在一开始就很完美。 目标表现在包含17 767 235行,
1回复

Azure - 基于时间排队的任务

我在Windows Azure上运行的应用程序处理来自用户(放入Azure队列)的传入请求,并将它们分配给真实世界的人。 人们有一定的时间来处理请求。 如果没有人分配处理请求,我需要转移到一组新人。 基本上,我想将这些任务排队,以便在特定时间处理,然后再次处理它们。 如果其中一个用户