Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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
Erweitern einer vorhandenen DDA
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:
WinDataDrivenAdapter: Erstellt einen Adapter basierend auf WinDDA.
WebDataDrivenAdapter: Erstellt einen Adapter basierend auf dem WebDDA.
JavaDataDrivenAdapter: Erstellt einen Adapter basierend auf JavaDDA.
UIADataDrivenAdapter: Erstellt einen Adapter basierend auf UIADDA.
Alle oben genannten Klassen werden von der DataDrivenAdapterBase-Klasse abgeleitet.
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.