Freigeben über


Verwenden von datengesteuerten Adaptern (Data Driven Adapters, DDAs) in Unified Service Desk

Datengesteuerte Adapter (Data-Driven Adapters, DDAs) sind die Adapter, die im Allgemeinen vom Hosted Application Toolkit (HAT) verwendet werden. Bei diesen Adaptern handelt es sich um generische Assemblys, die nur die Interaktion mit der Benutzeroberfläche verarbeiten und keine Geschäftsprozesse enthalten. Das Unified Service Desk SDK wird mit einer DDA ausgeliefert, die einen gemeinsamen Satz von Funktionen bietet, mit denen Sie eine Vielzahl von Anwendungen hosten und darauf zugreifen können. Je nach Art der Anwendung benötigen Sie jedoch möglicherweise zusätzliche Funktionen. Es gibt verschiedene Möglichkeiten, die vorhandene Funktionalität zu erweitern, z. B. das Erstellen einer neuen DDA (und deren Verwendung in einer zusammengesetzten DDA mit äußeren DDAs) und das Erweitern einer vorhandenen DDA.

In diesem Abschnitt

Typen von datengesteuerten Adaptern

Erstellen einer DDA

Erweitern einer vorhandenen DDA

Bindungen

Verwenden von DDAs in benutzerdefinierten Anwendungsadaptern

Typen von datengesteuerten Adaptern

Es gibt vier Arten von DDAs:

Erstellen eines DDAs

Sie können eine neue DDA erstellen, indem Sie die DataDrivenAdapterBase-Klasse erben.

Die Klasse hat den Konstruktor, der überladen werden kann.

Erweitern eines vorhandenen DDAs

Im vorherigen Abschnitt haben wir gesehen, wie Sie eine DDA erstellen. Wenn Ihre Anpassung jedoch nominal ist, können Sie die vorhandene DDA verwenden und sie gemäß den Anforderungen erweitern.

Sie können die folgenden Klassen verwenden, um die vorhandenen UII-DDAs zu erweitern:

Bindungen

Ein datengesteuerter Adapter verwendet Daten, Bindung en genannnt, um die Art zu definieren, in der es eine Benutzeroberflächenkomponente einer gehosteten Anwendung identifiziert. Die Bindungen können z. B. aus DOM-Pfaden (Document Object Model) bestehen, um Elemente auf einer Webseite zu beschreiben. Das folgende Beispiel zeigt eine Anwendungsinitialisierungszeichenfolge mit einer eingebetteten DDA-Bindungsunterstruktur. Dies ist ein allgemeines Beispiel, aber es gibt das Muster an, das zum Implementieren von Acc Steuerelementen in Windows-Bindungen verwendet wird.

Hinweis

Einige der Konfigurationsparameter wurden aus Gründen der Übersichtlichkeit entfernt.

<initstring>  
    <interopAssembly>  
      <URL>path to executable</URL>  
      <Arguments>test argument</Arguments>  
      <WorkingDirectory>c:\</WorkingDirectory>  
      <hostInside/>  
    </interopAssembly>  
<!—- notice there is no custom application adapter specified here-->  
    <displayGroup>None</displayGroup>  
    <optimumSize x="800" y="600"/>  
    <minimumSize x="640" y="480"/>  
    <DataDrivenAdapterBindings>  
      <Type>typeName, assemblyName</Type>  
      <Controls>  
        <AccControl name="combobox1">  
          <Path>  
            <FindWindow>  
              <ControlID>1003</ControlID>  
            </FindWindow>  
          </Path>  
        </AccControl>  
</Controls>  
    </DataDrivenAdapterBindings>  
</initstring>  
  

Wenn Sie die HAT Software Factory verwenden, erstellt sie das InitString. Die Anwendung kann dann von der Softwarefactory aus auf dem Server bereitgestellt werden.

Wenn Sie über die Admin-Benutzeroberfläche direkt eine gehostete Anwendung hinzufügen, müssen Sie nicht das gesamte InitString erstellen. Sie müssen nur den <DataDrivenAdapterBindings> Abschnitt angeben und ihn der Automation Xml Registerkarte hinzufügen.

Verwenden von DDAs in benutzerdefinierten Anwendungsadaptern

Obwohl DDAs ursprünglich zur Unterstützung von Automatisierungen innerhalb des Hosted Application Toolkit (HAT) konzipiert wurden, können sie von benutzerdefinierten Adaptern verwendet werden, um nützliche Ergebnisse zu erzielen. Das folgende Codebeispiel, das einem benutzerdefinierten Adapter entnommen wurde, veranschaulicht, wie benutzerdefinierte Adapter DDAs verwenden können, und veranschaulicht die allgemeinen Vorteile von DDAs. Wie im Beispiel veranschaulicht, ermöglicht die Verwendung von DDAs eine Trennung von Code- und Konfigurationsinformationen.

DataDrivenAdapter Dda;  
public override bool Initialize()  
{  
   Dda=DataDrivenAdapter.CreateInstance(ApplicationInitString,ApplicationObject);  
   return (Dda != null);  
}  
public override bool DoAction(Action action, ref string data)  
{  
if (action.Name == "AddToHistory")  
   {  
   Dda.ExecuteControlAction("combobox1");  
   Dda.SetControlValue("textbox1", data);  
   Dda.ExecuteControlAction("button1");  
   }  
}  
  

Die DDA-Konfiguration, die im InitString der Anwendung eingebettet ist, ist XML, wie im folgenden Beispiel gezeigt.

<DataDrivenAdapterBindings>  
<Type> Microsoft.UII.HostedApplicationToolkit.DataDrivenAdapter.WinDataDrivenAdapter, Microsoft.UII.HostedApplicationToolkit.DataDrivenAdapter</Type>  
  <Controls>  
    <AccControl name="combobox1">  
      <Path>  
        <FindWindow>  
          <ControlID>1003</ControlID>  
        </FindWindow>  
      </Path>  
    </AccControl>  
    <AccControl name="textbox1">  
      <Path>  
        <FindWindow>  
          <ControlID>1001</ControlID>  
        </FindWindow>  
      </Path>  
    </AccControl>  
    <AccControl name="button1">  
      <Path>  
        <FindWindow>  
          <ControlID>1002</ControlID>  
        </FindWindow>  
      </Path>  
    </AccControl>  
  </Controls>  
</DataDrivenAdapterBindings>  
  

Das <Type/> Element weist UII an, den im Typ- und Assemblyformat angegebenen Typ dynamisch zu instanziieren, sodass benutzerdefinierte DDAs geladen und verwendet werden können. Das <Controls/> Element enthält die Liste der konfigurierten Steuerelemente, die in einer Weise angegeben werden, die für den geladenen DDA erforderlich ist.

Siehe auch

Arbeiten Sie mit HAT Software Factory