次の方法で共有


アプリケーションと成果物の更新に関する既知の問題

アプリケーションの更新

アーティファクトを削除または削除しても、すべての場所から削除されるわけではありません

成果物を削除または削除すると、BizTalk Server データベースから削除されるため、管理コンソールまたは BTSTask ListApp コマンドによって生成されたアプリケーションの成果物の一覧に表示されなくなります。 これらの場所のいずれかに存在する場合、Windows レジストリ、グローバル アセンブリ キャッシュ (GAC)、仮想ディレクトリ、またはファイル システムから成果物は削除されません。 BizTalk 管理データベースにのみ存在する送信ポート、送信ポート グループ、受信ポート、および受信場所の場合、この操作は成果物を完全に削除します。

成果物の更新

成果物の状態を削除または変更すると、アプリケーションが動作しなくなる可能性があります

あるアプリケーションから別のアプリケーションに参照を追加し、別のアプリケーションが依存している成果物の状態を変更したり、成果物を削除したりすると、依存関係を持つアプリケーションは正しく機能しません。 成果物の状態の変更の詳細については、「成果物の管理 (https://go.microsoft.com/fwlink/?LinkID=154725)」の適切な成果物に関するセクションを参照してください。

.NET ポリシー ファイルはサポートされていません

.NET ポリシー ファイルの使用は、BizTalk Server ではサポートされていません。 これは、ポリシー ファイルが期待どおりに動作しない可能性があるためです。 ポリシー ファイルは.NET を GAC 内の指定されたアセンブリ バージョンにリダイレクトしますが、BizTalk Server は多くの場合、キャッシュまたは BizTalk 管理データベースからアセンブリと成果物データにアクセスします。 アーティファクトの種類、キャッシュの状況、ホスト インスタンスを再起動するかどうかによっては、ポリシー ファイルが必要な処理を行わない場合があります。

アセンブリの更新

ホストが停止していない場合、アセンブリに対する変更が有効にならない可能性があります

BizTalk アセンブリは、.NET のバージョン管理規則に従う必要があります。 この主な意味は、BizTalk プロジェクトは、別の .NET プロジェクトまたはアセンブリ (BizTalk プロジェクトを含む) の特定のバージョンに対してビルドされた後も、新しいバージョンに対して再構築されるまでそのバージョンを使用し続けるということです。

.NET のバージョン管理に関連する開発中に、BizTalk プロジェクトのバージョン番号が変更されず、型が読み込まれる BizTalk ホスト インスタンスを停止して起動せずにアセンブリが再デプロイされる場合、一般的な問題が発生します。

プロセスが再度実行されると、変更は有効になりません。 これは、.NET アセンブリがメモリに読み込まれる方法が原因です。 ホストにはアセンブリのメモリ内コピーが既に存在するため、新しいコピーがグローバル アセンブリ キャッシュ (GAC) に格納されている場合、アセンブリは再読み込みされません。 たとえば、オーケストレーションを含むアセンブリのバージョン 1.0.0.0 が展開されて実行されていて、オーケストレーションに変更が加えられたが、バージョン番号が変更されていない場合、変更は有効になりません。 ホスト インスタンスが停止すると、アセンブリのメモリ内コピーが解放され、ホスト インスタンスが再び起動すると、アセンブリの新しいコピーが再読み込みされ、変更が取得されます。 新しいバージョン (バージョン 2.0.0.0 など) がデプロイされ、読み込まれた場合は、変更が有効になります。

アセンブリのバージョンを変更すると、アセンブリとそれをバージョン別に参照する項目の間のリレーションシップが壊れる可能性があります

.NET Framework 開発では、ビルドの実行時にアセンブリのバージョン番号を現在のビルド番号に更新するのが一般的です。 ただし、BizTalk ソリューションを開発するときに、アセンブリのバージョン番号を変更すると、アセンブリのバージョン番号によって DLL を参照するアセンブリと依存アイテムの間の関係が壊れる可能性があります。 次の表に、バージョン番号を使用して BizTalk Server アセンブリを参照する項目と、アセンブリのバージョン番号を変更した場合の影響を示します。

エンティティ アセンブリのバージョン番号を変更した場合の影響
ファイルのバインド アセンブリのバージョン番号を変更すると、アセンブリを参照する既存のバインド ファイルが失敗します。 これは、バインド ファイルがバージョン番号を含む属性によってアセンブリを参照するためです。

メモ帳または別のエディターを使用して、バインド ファイルのバージョン情報を更新できます。 ソリューションを再デプロイしてから、BizTalk Server 管理コンソールを使用してバインド ファイルを再生成することもできます。 最後に、スクリプトを使用してデプロイとバージョン管理を自動化できます。 展開の詳細については、「 BizTalk アプリケーションの展開と管理 (https://go.microsoft.com/fwlink/?LinkID=154210)」を参照してください。
BAM 追跡プロファイル定義 (.btt) ファイル アセンブリのバージョン番号を変更すると、既存の BAM 追跡プロファイル定義ファイルが失敗します。 BAM 追跡ファイルはバイナリ ファイル形式であるため、編集できず、代わりに再生成する必要があります。 BAM 追跡プロファイルが必要な場合は、次のいずれかを行う必要があります。

- ビルド プロセス中にバージョン番号を頻繁に更新しないようにする
- バージョン番号が安定するまで BAM 追跡プロファイルのビルドを遅らせる
Web サービス発行ウィザードを使用して発行された Web サービス Web サービス発行ウィザードを使用して ASP.NET Web インターフェイスを生成すると、BizTalk Server アセンブリのアセンブリ バージョンが ASP.NET ソース コードに含まれます。 アセンブリのバージョン番号は、実行時に web サービス操作の bodyTypeAssemblyQualifiedName プロパティの一部として、ASP.NET インターフェイスによって使用されます。 bodyTypeAssemblyQualifiedName プロパティを更新せずに BizTalk Server アセンブリのバージョン番号が変更された場合、その後の Web サービス操作は BizTalk Server によって拒否されます。

受信場所で XmlDefaultPipeline を使用する場合、サブスクリプションはドキュメントの種類に依存します。 埋め込みアセンブリ情報を使用し、アセンブリが存在しない場合は失敗します。 PassThruPipeline (ポートを公開し、ウィザードに受信場所を作成させる場合の既定値) を使用する場合、サブスクリプションはこの埋め込みアセンブリ情報を無視します。