1

BizTalk アプリケーション ( ) を作成し、コマンド ライン ユーティリティApp1を使用してリソースを追加しようとしています。BTSTask一部のApp1BizTalk アセンブリは、いくつかの BizTalk アセンブリに依存していSharedAppます。SharedAppを使用してアセンブリを GACに追加し、gacutilそれらが GAC に存在することを確認しました。を実行すると、いずれかのアセンブリに依存する BizTalk アセンブリBTSTask AddResourceに対してコマンドが失敗します。App1SharedApp

エラー メッセージは、特定のSharedAppdll が参照用に見つからないことを示しています。SharedAppアセンブリの詳細 (名前、バージョンなど) が正しいことを確認しました。これは正しいアセンブリであり、GAC に存在します。

BizTalkSharedAppは GAC でこれらのアセンブリを検出し、呼び出し時にそれらを参照アセンブリとして使用できるようにすべきではありませんAddResourceか?

アセンブリを GAC に追加しSharedAppても問題が解決しなかった理由について何か考えはありますか?

編集:コマンドラインのサンプルテキストを追加

BTSTask.exe AddApp -ApplicationName:App1 -Server:BTServer1 -Database:BTDatabase1 -Description:App1_instance
BTSTask.exe AddResource -ApplicationName:App1 -Source:"path_to_App1.Assembly.dll" -Destination:"destination_path_for_App1.Assembly.dll" -Type:BizTalkAssembly -Options:GacOnAdd,GacOnInstall -Overwrite -Server:BTServer1 -Database:BTDatabase1
4

2 に答える 2

0

自動化を詳しく調べて詳細なログを有効にした後、より明確なエラー メッセージを取得することができました。

Error: Assembly "App1.Assembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxx" references the following assemblies that must be deployed before deploying this assembly: Assembly "SharedApp.Services, Version=1.0.0.0, Culture=neutral, PublicKeyToken=yyyyyyyyyyyyyyyy"

そのエラーをオンラインで検索した後、ディスカッション投稿から次のことを発見しました。

[a] DLL に XSD (BizTalk) スキーマが含まれている場合は、BizTalk 管理データベースにも展開する必要があります。

どうやら、これはアセンブリを GAC に追加することに加えて行う必要があります。App1これが、アプリケーションへのアセンブリの追加が失敗する理由です。BizTalk アセンブリを GACに追加しましたSharedAppが、BizTalk 管理データベースにも必要でした。

この問題を見てくださった方々、ありがとうございます。

于 2013-04-16T20:19:01.170 に答える
0

これは BizTalk 2010 ですか? その場合、.NET 4.0 で導入された「デュアル キャッシュ」が関係している可能性があります。ご存知かもしれませんが、現在 2 つのグローバル アセンブリ キャッシュがあり、2.0 GAC のアセンブリは 4.0 GAC アセンブリを使用できません。
SharedApp が .NET4.0 キャッシュにあり、追加するリソースが古いバージョンの BizTalk に対してコンパイルされている可能性がありますか?

声に出して考えただけでは、それが役立つかどうかはわかりません。乾杯

于 2013-04-12T08:09:57.330 に答える