8

1.8 (2012 年 10 月) にアップグレードする前に、これが ServiceDefinition でサイトを構成する方法です。

<Site name="Admin" physicalDirectory="..\Company.Admin">
  <Bindings>
    <Binding name="AdminBindingHttp" endpointName="HttpEndpoint" hostHeader="admin.company.com" />
  </Bindings>
</Site>

アップグレードした後、公開しようとすると次のエラーが発生しました。

Error 125 Cannot find the physical directory 'C:\Users\Me\Code\Company.Cloud\bin\Company.Admin' for virtual path Admin/.

physicalDirectory値を更新し、さらに 2 つのフォルダーを上に移動する必要がありました。

<Site name="Admin" physicalDirectory="..\..\..\Company.Admin">
  <Bindings>
    <Binding name="AdminBindingHttp" endpointName="HttpEndpoint" hostHeader="admin.company.com" />
  </Bindings>
</Site>

1.8 より前の Azure は csdef ファイルの元の場所のコンテキストで実行されていたようですが、現在は 2 フォルダー下のbin\Release\ServiceDefinition.csdefから実行されています。

最新の SDK バージョンで使用されるこの機能について具体的に説明しているチュートリアルをオンラインで見つけることができませんでした。これは公式の変更でしたか?また、同時に VS 2012 にアップグレードしたことにも言及する必要があります。

この機能は常に無視されているように感じます。(.config 変換の問題の欠如を参照してください)。Azure WebSites に切り替えたいと考えていますが、SSL/HTTPS が利用可能になり、プレビューが終了するまではできません。

4

2 に答える 2

9

はい、これは公式の変更でしたが、アップグレード レポートに含まれているもの以外にドキュメントが見つかりません。

「Site 要素の physicalDirectory 属性 '..\MyWebRole' には、相対パスが含まれています。このパスは、パッケージ化されたときにターゲット サービス定義ファイルが存在するディレクトリに対して相対的です。以前のバージョンでは、このファイルはルート プロジェクト ディレクトリ内にありました。このバージョンでは、デフォルトで、このファイルはプロジェクトの出力ディレクトリにあります。対象のサービス定義ファイルの新しい場所を反映するために、相対パスを更新する必要がある場合があります。

于 2012-11-14T17:41:25.450 に答える
2

sudhAnsu63 の問題に対応して、physicalDirectory 属性を更新すると同じ問題が発生しましたが、ファイルがリロードされ、古い (現在は正しくない) 構成に戻ります。理由はまだわかりませんが、VS が同じファイルの複数のバージョンを開くことがあることに気付きました。他のすべてのファイルを閉じ、編集を行い、ファイルを保存して閉じる必要がありましたが、最終的に編集が行われ、作業が開始されました。ファイルをVSの外部(メモ帳など)で編集するとうまくいくと思います。奇妙なことに、一度動作させると、この問題はもう発生していないようです。

于 2012-11-24T20:22:36.327 に答える