マップなどの一部の BizTalk 成果物は、完全修飾厳密名 (FQSN) によって選択されます。この場合、バインドには使用されるバージョンが含まれます。 これにより、BizTalk Server 管理コンソールで複数のマップを共存させることができます。 その結果、受信場所のプロパティで受信マッピング用、もしくは送信ポートのプロパティで送信側マッピング用のマップを選択できます。
[前提条件]
このトピックの手順を実行するには、BizTalk Server Administrators グループのメンバーであるアカウントでログオンする必要があります。
既存のマップに 2 つ目のマップを並べて追加するには
Visual Studio を開き、マップを含むプロジェクトを開きます。
アセンブリでマップを開き、マップにコードを変更します。
注
オーケストレーションからマップを呼び出し、マップ参照がハードコーディングされている場合は、オーケストレーション自体にコード変更を加える必要がある場合があります。
アセンブリのバージョン番号を変更します。
ソリューション エクスプローラーで、BizTalk プロジェクトを右クリックし、[ プロパティ] をクリックします。
プロジェクト デザイナーで、[アプリケーション] タブをクリックします。
右側のウィンドウで、[ アセンブリ情報] をクリックします。
[ アセンブリ情報 ]ダイアログ ボックスで、[ アセンブリバージョン ]フィールドの値を指定してアセンブリバージョン番号を変更します。 メジャー バージョン番号またはマイナー バージョン番号のみを変更する必要があります。 メジャー バージョン番号は、シーケンスの最初の数字 (n.0.0.0) です。マイナー バージョン番号は、シーケンスの 2 番目の数字 (0.n.0.0)。
[ OK]を クリックして[ アセンブリ情報 ]ダイアログ ボックスを閉じます。
アセンブリをコンパイルします。
グループ (およびすべてのコンピューター) にアセンブリを展開します。
更新されたバージョン番号を反映するようにマップを変更する
.NET アセンブリは、Scripting Functoid を使用してマップ内から呼び出すことができます。 これにより、柔軟性が大幅に向上し、開発者はさまざまなカスタム マッピングの問題を解決できます。 また、マップに一意の制約が適用されます。アセンブリ型名だけでなく、呼び出される完全なアセンブリ バージョン番号も内部的に参照する必要があります。 その結果、マップによって呼び出されたアセンブリのバージョン番号が変更されると、アセンブリを参照するすべてのリンクが中断されます。
この問題を回避するために、アセンブリをマップから呼び出す必要がある場合は、マップ機能のみを保持する特定のアセンブリが作成され、このアセンブリのアセンブリ バージョン番号が修正されることをお勧めします。 この方法では、他のヘルパー関数では、マップを中断せずにアセンブリのバージョンを更新できます。
マップの開発後にマップから参照されるアセンブリが変更された場合は、マップ エディターの外部でマップ ファイルを更新して、更新されたバージョン番号を反映することを検討してください。
更新されたバージョン番号を反映するようにマップ ファイルを変更するには
[スタート] メニューを使用して、メモ帳を開きます。
メモ帳の [ファイル] メニューの [開く] をクリックします。 [ 開く ] ダイアログ ボックスで、変更するマップ ファイルを選択し、[ 開く] をクリックします。
[編集] メニューの [検索] をクリックします。 [ 検索 ] ダイアログ ボックスに「 Assembly=」と入力し、[ 次を検索] をクリックします。
外部アセンブリへのスクリプト参照がある場合、メモ帳は次のような XML 要素を見つける必要があります。
<Script Language="ExternalAssembly" Assembly="Contoso.Scripts, Version=2.0.0.0, Culture=neutral, PublicKeyToken= <token> " Class="Contoso.Scripts" Function="CalculateValue" AssemblyPath="Contoso.Scripts.dll"/>
バージョン番号を更新します。 複数のインスタンスがある場合は、[編集] メニューの [置換] を使用します。
ファイルを保存します。
注
マップ エディターを使用してマップを開くようになりました。