在Azure云服务项目的csdef文件中,定义了以下环境变量:

      <Variable name="MONITORING_DATA_DIRECTORY">
        <RoleInstanceValue xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='MonitoringDataDirectory']/@path" />
      </Variable>


该项目成功构建。但是,当我尝试运行该项目时,它抛出一个错误,提示'/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='MonitoringDataDirectory']/@path' is an invalid xpath expression

Here是关于stackoverflow的类似问题,但是我不知道如何将解决方案应用于我的案例。有人能帮我一下吗?

最佳答案

我只是遇到了一个完全相同的问题,即完全相同的变量“ MONITORING_DATA_DIRECTORY”。原来,错误消息有点误导。 XPath是完全有效的。问题是我的.csdef文件没有声明名为“ MonitoringDataStore”的LocalResource。将此代码添加到.csdef中可以解决此问题:

<LocalResources>
  <LocalStorage name="MonitoringDataStore" cleanOnRoleRecycle="false" sizeInMB="200000" />
</LocalResources>

09-06 19:36