XML dell'estensione personalizzata (proprietà Grid)

 

Utilizzare la proprietà XML estensione personalizzata per aprire la finestra di dialogo Seleziona file XML estensione personalizzata , in cui è possibile selezionare il file contenente l'estensione XML dell'estensione personalizzata per la mappa.

Category

Compilatore

Valori consentiti

Il nome valido di un file che contiene l'XML estensione personalizzato di una mappa.

Digitare il nome completo del percorso del file o usare il pulsante con i puntini di sospensione (...) sul lato destro del campo di input per aprire la finestra di dialogo Seleziona file XML estensione personalizzata .

Valore predefinito

No.

Osservazioni

In una mappa è possibile chiamare un metodo in un assembly .NET esterno; è possibile eseguire questa operazione usando il functoid scripting , ad esempio. Così facendo, la mappa associa uno spazio dei nomi a questo assembly .NET esterno per fare riferimento ad esso nell'XSLT generato. Questo XSLT ha in genere l'aspetto seguente:

xmlns:ScriptNS{n}="http://schemas.microsoft.com/BizTalk/2003/ScriptNS{n}"  
  

Dove {n} è un numero che corrisponde alla quantità di assembly utilizzate finora nella mappa. Il file identificato dalla proprietà XML estensione personalizzata viene usato per associare questo spazio dei nomi generato all'oggetto FullyQualifiedName (FQN) dell'assembly .NET a cui fa riferimento. Questo file viene utilizzato durante le operazioni TestMap e in fase di esecuzione per creare un'istanza dell'assembly .NET e quindi effettuare una chiamata al metodo definito al suo interno. In base all'impostazione predefinita, questo file viene generato da BizTalk Mapper. Quando si convalida una mappa, la finestra Output conterrà collegamenti al file XSLT generato e un collegamento al file XML dell'estensione personalizzato generato, quest'ultimo di cui è in genere vuoto, ad eccezione del tag "<ExtensionObjects/>".

Per generare un file XML di estensione personalizzato non vuoto, usare i campi dell'assembly esterno della finestra di dialogo Configura script functoid (associata alla proprietà Scriptdi un functoid script) per identificare un assembly, una classe e un metodo esterni all'interno di tale classe. Convalidare quindi la mappa ed esaminare il contenuto dei file XML personalizzati e XSLT generati. Il file XSLT userà uno spazio dei nomi, ad xmlns:ScriptNS{n}="http://schemas.microsoft.com/BizTalk/2003/ScriptNS{n}" esempio e il file XML dell'estensione personalizzato definirà l'associazione tra questo spazio dei nomi e l'assembly .NET esterno.

Esistono due casi in cui è necessario compilare il file XML dell'estensione personalizzato e impostare il file XML dell'estensione personalizzata per fare riferimento a esso, come indicato di seguito:

  • Se si usa la proprietà Percorso XSLT personalizzato per specificare il proprio XSLT per l'intero file di mappa e si chiama un assembly .NET esterno dall'XSLT, si è responsabili della creazione di un file XML dell'estensione personalizzato formattato correttamente che fornisce l'associazione appropriata per lo spazio dei nomi a assembly.

  • Se si usano i tipi di script XSLT inline XSLT o Inline XSLT in un functoid scripting e si chiama un metodo in un assembly .NET esterno da tale XSLT, si è responsabili della creazione di un file XML di estensione personalizzato formattato correttamente che fornisce l'associazione appropriata dello spazio dei nomi a assembly. Ciò è necessario in quanto BizTalk Mapper non analizza l'XSLT fornito alla ricerca di chiamate ad assembly esterni. Tutte le informazioni di associazione fornite usando la proprietà XML estensione personalizzata verranno aggiunte a tutte le informazioni di associazione già generate quando la mappa è stata compilata (ad esempio le associazioni richieste da altri functoid scripting nella mappa che usano l'opzione assembly esterno). Quando si convalida la mappa, il contenuto risultante del file XML estensione personalizzato contiene l'unione delle informazioni di binding fornite e qualsiasi informazione di binding generata da BizTalk Mapper.

Nel file XML dell'estensione personalizzata di esempio seguente, lo spazio dei nomi http://schemas.microsoft.com/BizTalk/2003/ScriptNS0 è associato a un assembly denominato "CustomFunctions.dll" che contiene una classe denominata CustomFunctions.MyClass:

<ExtensionObjects>  
   <ExtensionObject  
      Namespace="http://schemas.microsoft.com/BizTalk/2003/ScriptNS0"  
      AssemblyName="CustomFunctions, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"  
      ClassName="CustomFunctions.MyClass" />  
</ExtensionObjects>  
  

Nel codice XSLT generato dalla mappa corrispondente, il metodo GetData in questa classe di assembly esterno viene chiamato usando la sintassi seguente:

ScriptNS0:GetData(p1, p2, p3)  
  

Dove il prefisso dello spazio dei nomi ScriptNS0 fa riferimento allo spazio dei nomi http://schemas.microsoft.com/BizTalk/2003/ScriptNS0.

Nota

Non è possibile annullare o ripetere la proprietà XML dell'estensione personalizzata .

Vedere anche

Proprietà griglia