WCF受信ポートによってアクティブ化されたオーケストレーションでFILE(またはFTP)受信場所を動的に作成できます。
Brian Loesgen bloggedオーケストレーションが受信場所を作成するために呼び出すことのできる簡単なコード例です。サーバー名とフォルダー名が1つの呼び出しから次の呼び出しに変更されない場合は、毎回同じ受信場所を使用し、実行時にそれを有効/無効にすることができます。ここで
特にコード内の場所を受ける活性化に対処別のスタックオーバーフローの質問です:Is there a way to automate turning a BizTalk Receive Location on or off through code? は、Visual Studioで新しいクラスのプロジェクトを作成し、Microsoft.BizTalk.ExplorerOMへの参照を追加、数行のコードを書く、とのあなたはあなたのヘルパーアセンブリを持っています!
private void CreateAndConfigureReceiveLocation()
{
BtsCatalogExplorer root = new BtsCatalogExplorer();
try
{
root.ConnectionString = "Server=.;Initial Catalog=BizTalkMgmtDb;Integrated Security=SSPI;";
//First, create a new one way receive port.
ReceivePort myreceivePort = root.AddNewReceivePort(false);
//Note that if you dont set the name property for the receieve port,
//it will create a new receive location and add it to the receive //port.
myreceivePort.Name = "My Receive Port";
//Create a new receive location and add it to the receive port
ReceiveLocation myreceiveLocation = myreceivePort.AddNewReceiveLocation();
foreach(ReceiveHandler handler in root.ReceiveHandlers)
{
if(handler.TransportType.Name == "HTTP")
{
myreceiveLocation.ReceiveHandler = handler;
break;
}
}
//Associate a transport protocol and URI with the receive location.
foreach (ProtocolType protocol in root.ProtocolTypes)
{
if(protocol.Name == "HTTP")
{
myreceiveLocation.TransportType = protocol;
break;
}
}
myreceiveLocation.Address = "/home";
//Assign the first receive pipeline found to process the message.
foreach(Pipeline pipeline in root.Pipelines)
{
if(pipeline.Type == PipelineType.Receive)
{
myreceiveLocation.ReceivePipeline = pipeline;
break;
}
}
//Enable the receive location.
myreceiveLocation.Enable = true;
myreceiveLocation.FragmentMessages = Fragmentation.Yes;//optional property
myreceiveLocation.ServiceWindowEnabled = false; //optional property
//Try to commit the changes made so far. If the commit fails,
//roll-back all changes.
root.SaveChanges();
}
catch(Exception e)
{
root.DiscardChanges();
throw e;
}
}
:
はここで受信場所をHTTPを作成および設定するには、サンプルfrom MSDNです