2016-07-25 44 views
0

我在這裏回答這個問題的底部:ASP.NET 5 web application as Azure Web Role?,因爲我正在爲asp.net構建一個azure web角色核心。錯誤:需要指定虛擬路徑'Web /'角色的物理目錄

當我運行PowerShell腳本我得到的錯誤:

Error CloudServices077: Need to specify the physical directory for the virtual path 'Web/' of role

如果有人知道另一種方式來使用asp.net核心蔚藍的Web角色,然後我完全支持這一點。

我正在使用CSPack來嘗試配置它。

PowerShell腳本:

# path to cspack 
$cspackPath = Join-Path $env:ProgramFiles 'Microsoft SDKs\Azure\.NET SDK\v2.8\bin\cspack.exe' 

$PackagePath = 'I:\Users\MyUserName\Documents\visual studio 2015\Projects\SoundVast\SoundVast.Azure\SoundVast.cspkg' 
$serviceDefinitionFile = 'I:\Users\MyUserName\Documents\visual studio 2015\Projects\SoundVast\SoundVast.Azure\ServiceDefinition.csdef' 
$webRoleName = 'WebRole1' 
$webRolePath = 'I:\Users\MyUserName\Documents\visual studio 2015\Projects\SoundVast\SoundVast.Azure' 

# define the cspack parameters 
$cspackParameter = @(
     $serviceDefinitionFile, 
     "/role:$webRoleName;$webRolePath;", 
     "/sites:$webRoleName;SoundVast;$webRolePath", 
     "/out:$PackagePath" 
    ) 

# execute cspack 
& $cspackPath @cspackParameter 

ServiceDefinition.csdef中

<?xml version="1.0" encoding="utf-8"?> 
<ServiceDefinition name="SoundVast.Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6"> 
    <WebRole name="WebRole1" vmsize="Small"> 
    <Sites> 
     <Site name="Web"> 
     <Bindings> 
      <Binding name="Endpoint1" endpointName="Endpoint1" /> 
     </Bindings> 
     </Site> 
    </Sites> 
    <ConfigurationSettings> 
     <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" /> 
    </ConfigurationSettings> 
    <Endpoints> 
     <InputEndpoint name="Endpoint1" protocol="http" port="80" /> 
    </Endpoints> 
    </WebRole> 
</ServiceDefinition> 

ServiceConfiguration.Cloud & ServiceConfiguration.Local

<?xml version="1.0" encoding="utf-8"?> 
<ServiceConfiguration serviceName="SoundVast.Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="4" osVersion="*" schemaVersion="2015-04.2.6"> 
    <Role name="WebRole1"> 
    <Instances count="1" /> 
    <ConfigurationSettings> 
     <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" /> 
    </ConfigurationSettings> 
    </Role> 
</ServiceConfiguration> 

的文件夾結構(如果它的確與衆不同...) enter image description here

回答

1

我錯過了這一行的phsycial目錄:<Site name="Web" physicalDirectory="../SoundVast">。在此之後,我運行腳本併爲我創建了一個包。關於這個文件真的不好。

<?xml version="1.0" encoding="utf-8"?> 
<ServiceDefinition name="SoundVast.Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6"> 
    <WebRole name="WebRole1" vmsize="Small"> 
    <Sites> 
     <Site name="Web" physicalDirectory="../SoundVast"> 
     <Bindings> 
      <Binding name="Endpoint1" endpointName="Endpoint1" /> 
     </Bindings> 
     </Site> 
    </Sites> 
    <ConfigurationSettings> 
     <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" /> 
    </ConfigurationSettings> 
    <Endpoints> 
     <InputEndpoint name="Endpoint1" protocol="http" port="80" /> 
    </Endpoints> 
    </WebRole> 
</ServiceDefinition> 
相關問題