2012-01-23 3 views
0

IIS가 호스팅하는 워크 플로 서비스에서 워크 플로의 현재 경로를 얻으려면 어떻게해야합니까?IIS가 호스팅하는 AppFabric 워크 플로 서비스의 현재 경로 얻기

는 예를 들어, 내 작업 흐름은 다음 디렉토리에 배포 : IIS 응용 프로그램이/사이트/웹 애플리케이션에서 생성 된 (그리고 Web.config의이 디렉토리에)됩니다

/Site/WebApp/SubDir/MyWorkflowService.xamlx 

경우, 어떻게받을 수 있나요 CodeActivity 또는 NativeActivity 내부의/Site/WebApp/SubDir 경로?

System.Web.Hosting.HostingEnvironment를 사용하여 IIS 응용 프로그램의 경로를 얻는 방법을 알아 냈지만 현재 워크 플로의 경로를 찾을 수있는 방법을 찾지 못했습니다. IIS applcation의 디렉토리.

답변

1

가장 쉬운 방법은 IServiceBehavior.ApplyDispatchBehavior()에서 시작시 경로를 결정하고 워크 플로 확장을 사용하여 워크 플로 작업에 제공하는 것입니다.

+0

답변 해 주셔서 감사합니다. 매우 유용한 힌트. IServiceBehavior.ApplyDispatchBehavior()를 의미합니까? – Mas

+0

경로를 얻기 위해 더 자세한 정보를 제공하기 위해 ServiceHostBase를 WorkflowServiceHost에 캐스팅 한 다음 모든 경로 정보가 포함 된 VirtualPathExtension을 가져 왔습니다. var workflowServiceHost = (WorkflowServiceHost) serviceHostBase; var virtualPathExtension = workflowServiceHost.Extensions.Find (); ' – Mas

+0

예, 맞습니다. 원하는 ApplyDispatchBehavior입니다. – Maurice