2010-04-16 5 views
2

에서 발생하지 않습니다. 받기 셰이프, 셰이프 보내기 및 표현 셰이프 몇 가지를 포함하는 오케스트레이션이 포함 된 테스트 BizTalk 프로젝트가 있습니다. Expression 셰이프는 C#으로 작성된 참조 된 dll을 호출합니다. C# dll은 GAC에 있으며, 클래스는 Serializable로 표시되어 있으며 클래스는 폴더의 디스크에 파일을 생성하기로되어있는 하나의 정적 메서드 만 가지고 있습니다.사용자 지정 .net 구성 요소가 BizTalk Expression Shape

모든 것이 빌드되고 배포되지만 수신 폴더에 파일을 배치하여 오케스트레이션을 시작할 때 모든 모양이 표현 모양을 제외하고 수행해야하는 작업을 수행합니다. 이 코드는 로컬에서 테스트했으며 디렉토리는 BT 앱이 이미 액세스하고 있기 때문에 보안상의 문제는 아니라고 생각합니다. 다음은

는 C# 코드이며, 그것이 내가, 식 형태의 코드를 호출하고 잘못 무슨 일?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.IO; 
namespace TestHelp 
{ 
    [Serializable] 
    public class TestWrite 
    { 
     public static void CreateFile() 
     { 
      FileInfo fi = new FileInfo(@"C:\Unrecorded\Out\DataForProcess\Test.txt"); 
      fi.Create(); 

     } 
    } 
} 

표현 모양 코드를 누구에게 어떠한 제안을 제공 할 수있는 방법입니다 아래 :

TestHelp.TestWrite.CreateFile(); 
+0

예외를 catch하고 이벤트 로그에 기록하십시오. –

+0

dll이 인스턴스화되고 있다고 생각하지 않기 때문에 아무 것도 기록하지 않았습니다. Biztalk이 표현식 모양을 무시하고있는 것으로 보입니다. – Sean

답변

2

아마도 BizTalk가 오케스트레이션 dll의 구형 복사본을 선택한다고 추측해야 할 것입니다. 시도하기 전에 GAC에서 업데이트했거나 재배포 했습니까? 그 외에도 가장 쉬운 방법은 BizTalk 인스턴스 (BTSNTSvcs.exe)에 디버거를 연결하고 디버깅을 시도하는 것입니다. C# 어셈블리가 실제로로드되고 있는지 확인하기 만하면됩니다. 실행.

+0

BTSNTSvcs.exe를 디버깅하기 전에 이전 버전의 오케스트레이션이 실행되었다고 추측했기 때문에 Orchestration Debugger를 시험해 보았습니다. – Filburt

관련 문제