アプリケーション ダイアグラムのトラブルシューティング

更新 : 2007 年 11 月

アプリケーション デザイナで作業している場合、特定のアクションは、アプリケーション ダイアグラムおよび他の分散システム ダイアグラムに影響します。このトピックでは、これらのアクションを実行した結果発生する状況、関連付けられているアイテムに対する影響、およびこれらの状況を解決するための手順について説明します。

次の一覧は、これらのアクションによって発生する可能性がある警告状態と、その他に問題のトラブルシューティングが必要になることがある領域についての説明です。

  • アプリケーション ダイアグラムの警告状態

  • ロックされたアプリケーション ダイアグラム

  • 同期の問題

  • アプリケーション ダイアグラムの終了と削除

  • クラス ライブラリ内の Web 参照のリバース エンジニアリング

他にトラブルシューティングが必要となる可能性がある領域については、次のトピックを参照してください。

アプリケーション ダイアグラムの警告状態

アプリケーション ダイアグラムに表示される可能性がある警告状態を次の表に示します。

警告状態

原因

赤い点線の外枠

アプリケーションまたはエンドポイントの定義の形状は、次のアイテムとのリンクが解除されると赤い点線で囲まれて表示されます。

  • アプリケーションまたはエンドポイントのシステム定義モデル (SDM: System Definition Model) 定義が見つかりません。

  • 実装済みのアプリケーション定義に関連付けられているプロジェクトが、見つからない、アンロードされている、利用できないのいずれかに該当します。

リンクが解除されたアプリケーション定義またはエンドポイント定義は、"孤立した" 定義とも呼ばれます。

赤のエラー (X)

アプリケーション定義で検証エラーが発生しています。このアイコンは、アプリケーション定義の形状で、アプリケーションの種類名の下に表示されます。

黄色の警告 (!)

次のいずれか。

  • Web サービス クラス定義インラインを含む .asmx ファイルが、.NET Web サービス プロバイダ エンドポイントの作成に使用されました。

  • Web サービス コンシューマ エンドポイントに対して、実装が行われませんでした。

  • WSDL バインディング名および名前空間が、Web サービスのプロバイダ エンドポイントとコンシューマ エンドポイント間で一致しません。

  • プロジェクト ファイルがコンパイルまたは解析されていません。

  • Web サービス プロバイダ エンドポイントに関連付けられている Web サービス クラスの言語が、それを含むプロジェクトの言語と一致しません。

表示される可能性がある警告状態の詳細については、次のセクションを参照してください。

  • アプリケーションまたはエンドポイントのエラー警告状態

  • アプリケーションまたはエンドポイントの警告状態

アプリケーションまたはエンドポイントのエラー警告状態

次の状況で、アプリケーションまたはエンドポイントにエラー警告状態が表示されます。

  • アプリケーションまたはエンドポイントのシステム定義モデル (SDM) 定義が見つかりません。

    SDM メタデータが見つからない場合、アプリケーション定義またはエンドポイント定義は、孤立して表示されます。これは、SDM メタデータがアプリケーション定義 (.sdm) ファイルで見つからない場合、またはアプリケーション定義の .sdm ファイルがソリューションに存在しない場合に発生します。SDM の詳細については、「システム定義モデル (SDM) の概要」を参照してください。

    たとえば、アプリケーション ダイアグラムを閉じた状態でアプリケーション定義の .sdm ファイルを削除した場合、アプリケーション定義、およびメンバとしてのそのユースは、システム ダイアグラム上では孤立して表示されます。アプリケーション ダイアグラムを再度開くと、Visual Studio では別のソースから再作成できる SDM 情報を使用して、.sdm ファイルが再生成されます。また、Visual Studio では、再生成された .sdm ファイルに基づいて、アプリケーション ダイアグラムに新しいアプリケーション定義が再生成されます。

    ms181876.alert_note(ja-jp,VS.90).gifメモ :

    再生成されたこの .sdm ファイルには、以前削除された .sdm ファイルだけに格納されていた情報は含まれません。特定の設定、制約、アプリケーション定義の ID の変更などの特定情報 (名前、SDM ドキュメント名、カルチャ、バージョンなど) は失われます。たとえば、ASP.NET アプリケーションの Web コンテンツのエンドポイントの SDM 情報は、その .sdm ファイルだけに格納されます。.sdm ファイルを削除した場合、このファイルは、Visual Studio においてアプリケーション ダイアグラムを再度開いたときに再生成されます。ただし、Visual Studio では、Web コンテンツ エンドポイントのリバース エンジニアリングは行われません。これらのエンドポイントは孤立したまま残ります。

    孤立した定義を解決するには、.sdm ファイルを復元します。.sdm ファイルを復元できない場合は、新しい定義に必要なエンドポイントを新たに追加し、孤立した定義から新しい定義に対してアプリケーション定義を再接続します。孤立した定義に起因してシステム ダイアグラムに孤立したメンバが含まれている場合は、新しい定義で関連付けしてメンバを修復します。最後に、孤立した定義をアプリケーション ダイアグラムから削除します。詳細については、「方法 : アプリケーション システムで孤立したメンバを修復する」を参照してください。

  • 実装済みのアプリケーション定義に関連付けられているプロジェクトが見つからないか、ソリューションからアンロードされています。

    実装済みのアプリケーション定義とその接続は、そのプロジェクトが見つからないかソリューションからアンロードされている場合に、孤立して表示されます。

    この状況を解決するには、プロジェクトをソリューションに戻すか再ロードします。詳細については、「方法 : 既存のソリューションで、プロジェクトのリバース エンジニアリングを行う」および「方法 : プロジェクトをアンロードして再読み込みする」を参照してください。

  • 実装済みのアプリケーション定義に関連付けられているプロジェクトは利用できなくなります。

    実装済みのアプリケーション定義とその接続は孤立して表示され、そのプロジェクトはソリューションからアンロードされたとして表示されます。

    この問題を解決するには、アンロードしたプロジェクトをソリューションから削除し、アプリケーション定義をアプリケーション ダイアグラムから削除します。

  • アプリケーションで検証エラーが発生しています。

    赤いエラー アイコンがアプリケーションに表示されます。検証エラーは、[エラー一覧] ウィンドウに表示されるので、それを確認して解決できます。詳細については、「[エラー一覧] ウィンドウ」を参照してください。

アプリケーションまたはエンドポイントの警告状態

黄色の警告状態は、次の状況で、アプリケーションまたはエンドポイントに表示されます。

  • Web サービス クラス定義インラインを含む .asmx ファイルが、.NET Web サービス プロバイダ エンドポイントの作成に使用されました。

    警告アイコンは、Web サービス クラス定義インラインを含む .asmx ファイルがエンドポイントの作成に使用されたときに、.NET Web サービス プロバイダ エンドポイントに表示されます。

    この状況を解決するには、Web サービスを、個別のコード ファイルまたは "分離コード" ファイルの単一のクラス定義内で定義する必要があります。詳細については、「アプリケーション ダイアグラムでの ASP.NET アプリケーションの概要」を参照してください。

  • Web サービス コンシューマ エンドポイントに対して、実装が正常に終了しませんでした。

    Web 参照を作成できなかったので、コンシューマ エンドポイントに警告アイコンが表示されます。原因を解決した後、コンシューマ エンドポイントを実装できます。

    コンシューマ エンドポイントを実装するには、Web サービス コンシューマ エンドポイントを選択し、[ダイアグラム] メニューの [実装] をポイントし、[実装] をクリックします。エンドポイントを右クリックし、[実装] をクリックすることもできます。

    この状況を引き起こす可能性があるシナリオを次の表に示します。

    状況

    この状況の解決方法

    コンシューマ エンドポイントが、未定義の型を参照する操作を含む Web サービス プロバイダ エンドポイントに接続されている。

    Web サービス プロバイダ エンドポイントの型を定義し、コンシューマ エンドポイントを実装します。詳細については、「方法 : ASP.NET Web サービスの操作およびパラメータの型を定義する」を参照してください。

    コンシューマ エンドポイントが、実装されていない Web サービス プロバイダ エンドポイントに接続されている。

    Web サービス プロバイダ エンドポイントを含む ASP.NET アプリケーションを実装します。接続はされているがまだ実装されていないコンシューマ エンドポイントが自動的に実装されます。

    ms181876.alert_note(ja-jp,VS.90).gifメモ :
    WSDL ファイルも、指定した WSDL の場所で利用可能であることを確認します。

    WSDL ファイルをダウンロードしようとしたときにエラーが発生した。

    .NET Web サービス プロバイダ エンドポイントが実装され、ソリューションの .asmx ファイルに対応している場合、ランタイム エラーがこの状況を引き起こすことがあります。これらのエラーを表示するには、ソリューション エクスプローラで .asmx ファイルを右クリックし、[ブラウザで表示] をクリックして、テスト ページを開きます。エラーを修正した後、コンシューマ エンドポイントを右クリックして、Web 参照を更新します。

    Web サービス プロバイダ エンドポイントは、Web Services Interoperability (WS-I) Basic Profile1 バージョン 1.1 に準拠していないのに、準拠していることになっている。

    Web サービス クラス ファイルで、次の属性を調べます。

    <WebServiceBinding(Name:="WebServiceName", ConformsTo:= WsiProfiles.BasicProfile1_1, EmitConformanceClaims:=True)> _

    以下のいずれかを選択します。

    • Web サービスを WS-I Basic Profile に準拠させる場合は、Web サービスの .asmx ファイルのテスト ページを開いて、解決が必要なエラーまたは警告の一覧を調べます。

      ms181876.alert_note(ja-jp,VS.90).gifヒント :
      このタスクを実行するには、ソリューション エクスプローラで .asmx ファイルを右クリックし、[ブラウザで表示] をクリックします。エラーを修正した後、コンシューマ エンドポイントを右クリックして、Web 参照を更新します。

      または

    • Web サービスを WS-I Basic Profile に準拠させない場合は、Web サービス クラス ファイルから ConformsTo 属性および EmitConformanceClaims 属性を削除します。

    IIS 開発サーバーまたは ASP.NET 開発サーバーが動作していない可能性があるため WSDL ファイルにアクセスできない。

    IIS 開発サーバーまたは ASP.NET 開発サーバーが動作していることを確認します。詳細については、使用しているバージョンの IIS の製品ドキュメントおよび「Visual Web Developer における Web サーバー」を参照してください。

    ASP.NET が Microsoft Internet Information Services (IIS) で有効になっていない。

    ASP.NET を IIS で有効にします。詳細については、使用しているバージョンの IIS の製品ドキュメントを参照してください。

    6.0 より前のバージョンの IIS で Unicode URL への Web 参照がサポートされていない。

    IIS 6.0 にアップグレードします。詳細については、https://go.microsoft.com/fwlink/?LinkID=42196 の Microsoft Internet Information Services の製品ドキュメント、および https://go.microsoft.com/fwlink/?LinkID=34154 にある「Microsoft Windows Server 2003 導入ガイド」を参照してください。

    1WS-I Basic Profile は、Web サービス間の互換性を保つための推奨事項を含む仕様です。WS-I の詳細については、MSDN オンライン (https://go.microsoft.com/fwlink/?LinkId=49585) の「Interoperability Resources」を参照してください。

  • WSDL バインディング名とバインディング名前空間が、Web サービスのプロバイダ エンドポイントとコンシューマ エンドポイント間で一致しません。

    WSDL バインディング名とバインディング名前空間が一致しない Web サービス エンドポイントに接続しようとすると、警告のツールヒントが表示されます。ただし、接続自体が妨げられることはありません。

  • プロジェクト ファイルがコンパイルまたは解析されていません。

    プロジェクト ファイルの解析ができない場合は、アプリケーションで警告が表示されます。[エラー一覧] ウィンドウに、アプリケーションの名前、プロジェクト ファイル、コンパイルまたは解析されない行の位置が表示されます。

    この状況を解決するには、指定されたファイルの解析エラーまたはコンパイル エラーを解決するか、それらのエラーを引き起こした変更を元に戻します。

  • Web サービス プロバイダ エンドポイントに関連付けられている Web サービス クラスの言語が、それを含むプロジェクトの言語と一致しません。

    Web サービス クラス ファイルの言語がそれを含むアプリケーション プロジェクトの言語と一致しない場合は、Web サービス プロバイダ エンドポイントに警告のアイコンが表示されます。プロキシ クラスが存在しないので、Web サービス コンシューマ エンドポイントにも警告が表示されます。

    この状況を解決するには、Web サービスの言語と Web サービス プロバイダ アプリケーションの言語を一致させる必要があります。

ロックされたアプリケーション ダイアグラム

アプリケーション ダイアグラムがロックされ、読み取り専用状態で表示される場合があります。ダイアグラムが影付きで表示されるほか、ダイアグラム上のアプリケーション定義に鍵のアイコンが表示され、ダイアグラムに対する変更ができない状況になります。アプリケーション ダイアグラムは、次の状況でロックされます。

  • アプリケーション プロジェクトのコード ファイルまたはクラス ファイルがコンパイルまたは解析されていません。

    ダイアグラムがロックされ、[エラー一覧] ウィンドウに、コンパイルまたは解析されていない 1 つ以上のファイルと、そのファイル内でエラーが発生した場所が表示されます。

    この状況を解決するには、指定されたファイルのコンパイル エラーまたは解析エラーを解決するか、それらのエラーを引き起こした変更を元に戻します。

  • 構成ファイルで暗号化されたセクションを変更しようとしましたが、これらのセクションの復号化に失敗しました。

    構成ファイル セクションが暗号化されている場合、そのセクションを編集するには、それを復号化する必要があります。復号化しない場合、ダイアグラムはロックされ、[エラー一覧] ウィンドウに、ダイアグラムがロックされていることが示されます。

    この状況を解決するには、必要な復号化プロバイダおよびキーをインストールするか、手動でファイルを復号化します。場合によっては、アプリケーション ダイアグラムを閉じて、再度開く必要があります。また、暗号化されたセクションを構成ファイルから削除することもできます。ただし、暗号化されたデータを削除すると、それが削除されます。詳細については、「アプリケーションの実装に関する考慮事項」を参照してください。詳細については、「保護された構成を使用した構成情報の暗号化」および「構成セクションの暗号化と複合化」を参照してください。

  • アプリケーション ダイアグラムの変更を、ソース コード管理下でチェックインされたままの他のプロジェクト ファイルと同期できません。

    ダイアグラムはロックされ、[エラー一覧] ウィンドウに、チェックアウトがキャンセルされたために同期エラーが発生したことが示されます。

    この状況を解決するには、変更を同期できるように、必要なファイルをチェックアウトし、アプリケーション ダイアグラムを閉じてから再度開きます。詳細については、「ソース管理におけるシステム定義モデル (SDM) ドキュメント」を参照してください。

    たとえば、これは、Web サービスの .asmx ファイルが削除され、ソース コード管理オプションが、作業ファイルを常にチェックアウトするように設定されている場合に発生します。この状況を解決するには、対応するプロジェクトからアプリケーション ダイアグラム (.ad) ファイルだけでなくアプリケーション定義 (.sdm) ファイルについても、ファイルがチェックアウトされていない場合はチェックアウトします。このタスクを実行した後、アプリケーション ダイアグラムを閉じて再度開きます。

  • アプリケーション ダイアグラムを同期のためにチェックアウトできません。

    アプリケーション ダイアグラムがソース コード管理にチェックインされている場合に、ソース コード管理が同期のためにダイアグラムをチェックアウトできないとき、そのダイアグラムはロックされています。これは、ソース コード管理設定で、サーバー バージョンのファイルをチェックアウトする設定の場合に発生します。この場合、ファイルは再ロードされます。しかし、SDM ドキュメントは、同期中の再ロードをサポートしていないので、ダイアグラムのチェックアウトができず、ロックされます。

    この状況を解決するには、ダイアグラムを閉じて再度開きます。これによってダイアグラムの同期が行われます。この状況を回避するには、ソース コード管理オプションを、作業フォルダ バージョンを常にチェックアウトするか、ファイルの再ロードが要求される操作の前にファイルをチェックアウトする設定に変更します。詳細については、「ソース管理におけるシステム定義モデル (SDM) ドキュメント」を参照してください。

  • ソース コード管理からソリューションに追加されたアプリケーション プロジェクトの .sdm ファイルのユーザーによって、チェックアウトはキャンセルされました。

    ソリューションにアプリケーション ダイアグラム (.ad) ファイルが含まれ、プロジェクト (アプリケーション ダイアグラム上のアプリケーション用に生成済みのもの) がソース コード管理からソリューションに追加された場合、Visual Studio では、そのプロジェクトに含まれる .sdm ファイルが自動的にチェックアウトされるか、チェックアウトするように求めるメッセージが表示されます。ソース コード管理設定によって、この処理は変わります。この .sdm ファイルでチェックアウトがキャンセルされると、ダイアグラムを現在開いている場合は、ダイアグラムがロックされます。または、次回ダイアグラムを開いたときにダイアグラムがロックされます。

    この状況を解決するには、ダイアグラムを閉じ、.sdm ファイルを手動でチェックアウトし、ダイアグラムを再度開きます。また、ダイアグラムを再度開いたときに、.sdm ファイルをチェックアウトすることもできます。この状況を回避するには、.sdm ファイルのチェックアウトを求めるメッセージが表示されているときにチェックアウトをキャンセルしないようにします。詳細については、「ソース管理におけるシステム定義モデル (SDM) ドキュメント」を参照してください。

  • アプリケーション ダイアグラムで名前を変更した Web サービス プロバイダ エンドポイントへの Web 参照を含む、Windows アプリケーション プロジェクトを使用しているユーザーがチェックアウトをキャンセルした後に、その Windows プロジェクトに関連付けられている App.config ファイルと Settings.settings ファイルを使用しているユーザーがチェックアウトをキャンセルしました。

    Windows アプリケーション プロジェクトで Web 参照と関連付けられている .NET Web サービス プロバイダ エンドポイントの名前を変更すると、Visual Studio では、Web 参照を更新できるように、Windows アプリケーション プロジェクトが自動的にチェックアウトされるか、チェックアウトするように求めるメッセージが表示されます。ソース コード管理設定によって、この処理は変わります。詳細については、「アプリケーション ダイアグラムでの ASP.NET アプリケーションの概要」を参照してください。プロジェクトのチェックアウトがキャンセルされると、.NET Web サービス プロバイダ エンドポイントに関連付けられた .asmx ファイルとクラス ファイルは、前の名前に戻ります。Visual Studio では、そのプロジェクトに関連付けられた App.config ファイルと Settings.settings ファイルがチェックアウトされるか、チェックアウトするように求めるメッセージが表示されます。これらのファイルでチェックアウトがキャンセルされると、アプリケーション ダイアグラムを現在開いている場合は、ダイアグラムがロックされます。または、次回ダイアグラムを開いたときにダイアグラムがロックされます。

    この状況を解決するには、ダイアグラムを閉じ、手動で必要なファイルをチェックアウトしてから、ダイアグラムを再度開きます。または、ダイアグラムを再度開くときにファイルをチェックアウトします。この状況を回避するには、App.config ファイルと Settings.settings ファイルのチェックアウトを求めるメッセージが表示されているときにチェックアウトをキャンセルしないようにします。チェックアウトを受け入れると、.NET Web サービス プロバイダ エンドポイントの名前に含まれる大文字は小文字に変更されます。

  • アプリケーション ダイアグラム (.ad) ファイルを開いた状態で、ソース コード管理から最新バージョンの SDM ドキュメントを取得しました。

    この操作を実行するにはアプリケーション ダイアグラムを再度読み込む必要があり、これらのファイルの同期が失われる可能性があります。アプリケーション ダイアグラムを開いた状態でこの操作を実行すると、アプリケーション ダイアグラムがロックされます。詳細については、「ソース管理におけるシステム定義モデル (SDM) ドキュメント」を参照してください。

    この状況を解決するには、ダイアグラムを閉じてから開き直します。

  • アプリケーション ダイアグラム上のアプリケーションが、アプリケーション定義 (.sdm) ファイルを生成したカスタム テンプレートを使用して実装されました。

    この種のテンプレートは、通常、アプリケーション ダイアグラム上のアプリケーションに関連付けられているプロジェクトから作成されます。これらのテンプレートを使用すると、テンプレートによって生成されたアプリケーション定義 (.sdm) ファイルと、アプリケーション デザイナが実装プロセス中に作成しようとするファイルの間で競合が発生します。

    この状況を解決するには、ダイアグラムを閉じ、.sdm ファイルを削除し、ダイアグラムを再度開きます。

  • WSE (Web Services Enhancement) 設定を使用する Web サービス プロジェクトが、WSE がインストールされていないアプリケーション ダイアグラムを含むソリューションでリバース エンジニアリングされたか、開かれました。

    WSE 設定を使用する Web サービス プロジェクトが、WSE のインストールされていないコンピュータで開かれるか、分散システム ソリューションでリバース エンジニアリングされると、ダイアグラムはロックされます。

    この状況を解決するには、ダイアグラムを閉じ、WSE をインストールし、ダイアグラムを再度開きます。詳細については、「アプリケーションを定義するためのアプリケーションの種類とプロトタイプ」および「既存のソリューションでのリバース エンジニアリングに関する考慮事項」を参照してください。

  • コードの実行中にアプリケーション ダイアグラムまたはプロジェクトが変更されました。

    コードの実行中 (Visual Studio デバッガの実行中など) にソリューション内のアプリケーション ダイアグラムまたはプロジェクトに変更を加えようとした場合、ダイアグラムがロックされます。システム ダイアグラムなど、新しい分散システム ダイアグラムを追加し、コードの実行中にそのダイアグラムでアクションを実行すると、Visual Studio が応答しなくなります。

    この状況を解決するには、コードの実行を中止します (デバッガを閉じるなど)。この状況を回避するには、新しい分散システム ダイアグラムを追加したり、ダイアグラムに対するアクションを実行したりする前に、コードの実行を中止するようにします。

  • アプリケーション ダイアグラムなど、なんらかのシステム定義モデル (SDM) ファイルがデザイナの外で変更されました。

    アプリケーション ダイアグラムなどの SDM ファイルに対し、対応するデザイナを使わずに変更を加えた場合、アプリケーション ダイアグラムがロックされます。

    この状況を解決するには、アプリケーション ダイアグラムを閉じてから開き直します。

  • デザイナの操作中にソリューションを閉じようとしました。

    デザイナの操作中にソリューションを閉じようとすると、アプリケーション ダイアグラムがロックされます。たとえば、この状況は、チェックアウト時に、ソリューションに対する変更が、ソース コード管理から自動的に取得されたときに発生します。

    この状況を解決するには、ダイアグラムを閉じた後、ソリューションを閉じてから開き直します。ソース コード管理下の最新バージョンで、ソリューションとプロジェクト ファイルを同期した後、ダイアグラムを開き直してください。閉じる前にソリューションを保存するように求められる場合があります。ただし、ソリューションを保存するためには、ソリューション内の項目を手動でマージして、ソリューションを同期させなければならないことがあります。一般に、SDM ドキュメントをマージすることはお勧めできません。詳細については、「システム定義モデル (SDM) ドキュメントの同時チェックアウトと変更」を参照してください。

同期の問題

  • 実装をサポートするアプリケーションが実装されると、それに対応するプロジェクトが生成され、ソリューションに表示されます。アプリケーションのシステム定義モデル (SDM) 定義は、.sdm 拡張子を持つ SDM ドキュメントに格納され、生成されるプロジェクトに含まれます。アプリケーション ダイアグラムを開いたり閉じたりするたびに、この .sdm ファイルが、関連するプロジェクト コードに対する変更と同期されます。したがって、アプリケーション ダイアグラムまたは .sdm ファイルがコードと非同期になった場合は、アプリケーション ダイアグラムを閉じて再度開くと再同期できます。詳細については、「システム定義モデル (SDM) の概要」および「システム定義モデル (SDM) ドキュメントの同期」を参照してください。

  • App.config ファイル (Windows アプリケーションの場合) または Web.config ファイル (ASP.NET アプリケーションの場合) の特定の要素に対し、別個の構成 (.config) ファイルを指定できます。この構成ファイルを追加した後、App.config ファイルまたは Web.config ファイル内の要素に対し、configSource 属性を追加することによって、その場所を指定できます。この configSource 属性で、App.config ファイルが格納されているディレクトリ内のフォルダと、有効な構成ファイルの名前を指定します。次に例を示します。

    <sessionState configSource="MyFolder\MyConfigFile.config" />
    

    追加した構成ファイルは、対応する要素の構成情報を 1 つだけ持つことができ、<?xml…?> 宣言タグを含めることはできません。たとえば、MyConfigFile.config には、次のように単一の要素を記述します。

    <sessionState>
        <Add session state info here>
    </sessionState>
    
    ms181876.alert_note(ja-jp,VS.90).gifメモ :

    追加した構成ファイルがプロジェクト内の別の場所に移動されても、configSource 属性に対して新しい場所が自動的に反映されるわけではありません。したがって、新しい場所に合わせて configSource 属性を手動で更新する必要があります。アプリケーション ダイアグラムがロックされた場合は、追加した構成ファイルが適切な形式で記述されていることを確認してください。それ以外の場合は、アプリケーション ダイアグラムを閉じてから、開き直します。

  • 無効な拡張子を持つ WSDL ファイルの名前を変更しても、その Web サービスのエンドポイントに対する接続は、すぐには削除されません。アプリケーション ダイアグラムを更新するには、一度閉じてから開き直します。

アプリケーション ダイアグラムの終了と削除

ソリューションからアプリケーション ダイアグラムまたはプロジェクトを削除するには、アプリケーション ダイアグラムと、ソリューション内で開いている他のすべての分散システム ダイアグラムを閉じる必要があります。アプリケーション ダイアグラムを閉じるときは、開いているシステム ダイアグラムまたは配置ダイアグラムを保存し終了することが要求されます。

アプリケーション ダイアグラムを保存しないで閉じるには、まず、開いているシステム ダイアグラムまたは配置ダイアグラムを閉じます。

クラス ライブラリ内の Web 参照のリバース エンジニアリング

次の状況では、クラス ライブラリ内の Web サービス参照が正しくリバース エンジニアリングされない場合があります。

  • 適切なエントリをコピーし、クラス ライブラリ プロジェクトの参照をコンシューマ アプリケーションに追加した後、最後の手順としてクラス ライブラリをビルドすると、Visual Basic のクラス ライブラリに含まれる Web サービス参照を正しくリバース エンジニアリングできない場合があります。

    この状況を解決するには、クラス ライブラリ内の Web 参照を右クリックし、[Web 参照の更新] を選択した後で、クラス ライブラリをビルドし直します。この状況を回避するには、新しい Web 参照を追加した後、構成ファイルのエントリをコピーしたり、クラス ライブラリ プロジェクトの参照を追加したりする前に、クラス ライブラリをビルドするようにします。

  • コンシューマ アプリケーションが複数のクラス ライブラリを参照しており、それぞれのライブラリに異なる Web サービスへの Web 参照が含まれる場合、Visual Basic のクラス ライブラリに含まれる Web サービス参照は正しくリバース エンジニアリングされません。

    この状況を解決するには、関係するクラス ライブラリのすべての Web 参照を更新する必要があります。関係する個々のクラス ライブラリの各 Web 参照を右クリックし、[Web 参照の更新] を選択して、ソリューション全体をビルドし直します。新しい Web 参照を追加して、対応するクラス ライブラリをビルドし直した後、ソリューション全体を再度ビルドすると、これらの Web 参照がリバース エンジニアリングされます。

  • Windows プロジェクトと ASP.NET Web プロジェクトの両方が同じクラス ライブラリを参照している場合、Web サービスの参照が正しくリバース エンジニアリングされません。

    この状況を解決するには、アプリケーション ダイアグラムを閉じ、Windows プロジェクトおよび ASP.NET Web プロジェクトから共有クラス ライブラリへの参照を削除します。まず、ASP.NET Web プロジェクトにクラス ライブラリの参照を追加してからアプリケーション ダイアグラムを開き、次に、Windows プロジェクトにクラス ライブラリの参照を追加します。

詳細については、「方法 : アプリケーション ダイアグラムでアプリケーションからクラス ライブラリを参照する」を参照してください。

参照

処理手順

システム ダイアグラムのトラブルシューティング

参照

メンバおよびエンドポイントのアプリケーション システムからの削除に関する考慮事項

その他の技術情報

アプリケーション デザイナを使用したアプリケーションのデザイン