← Alle Kurse
Integration · Kostenloser Kurs

Kurs Anwendungsintegration

Früher oder später brauchen Sie in Ihrer Wisej.NET-App ein JavaScript-Widget eines Drittanbieters – ein ausgefeiltes Grid, eine Diagrammbibliothek, einen spezialisierten Editor. Dieser Kurs zeigt den Wisej.NET-Weg dafür: serverseitig verwaltete Komponenten mit schlanken Client-Adaptern und einem sauberen Vertrag zwischen beiden statt fragiler Skript-Hacks. Zehn Module vermitteln das Vokabular der Integration und die JavaScript-Grundlagen, die Sie wirklich brauchen, und führen dann durch die schnelle Integration mit dem Widget-Control, wiederverwendbare, designerfreundliche Widget-Klassen, eigene Controls und Theming, Client-Server-Aufrufe und Serialisierung, Event-Verträge, Postback und Datenendpunkte sowie komplexe datengebundene Widgets (mit Beispielen für Kendo und DevExtreme) – zum Schluss stehen Produktionsreife, Fehlersuche und ein Abschlussprojekt. Der Kurs richtet sich an erfahrene Entwickler, die echte UI von Drittanbietern einbinden und ausliefern müssen.

Integrieren Sie JavaScript-Widgets von Drittanbietern auf die Wisej.NET-Art – serverseitig verwaltete Komponenten, Client-Adapter, saubere Client-Server-Verträge, Datenendpunkte und produktionsreife Paketierung.

Kostenlosen Kurs starten

Auch verfügbar auf: EnglishFrançaisItalianoEspañol

Lehrplan

Modul 1: Integrationsarchitektur und Vokabular

Modul 1 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Architektur und Vokabular“ an, erstellen Sie das Beispiel mit einem KI-Assistenten, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Das Komponenten-/Widget-/Control-Modell sowie die Rendering- und Event-Pipeline von Wisej.NET verstehen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionWidgets auf das Komponenten-/Widget-Modell abbilden · 7 Min.

    Widgets auf das Komponenten-/Widget-Modell abbilden – ein geführter Video-Walkthrough zu Modul 1, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Folgen Sie einer Integration über den Server und den Browser. Wisej.NET besitzt den Komponentenstatus, während ein Browser-Widget ihn anzeigt. Durch die explizite Beibehaltung dieser Grenze wird verhindert, dass die Anbieterbibliothek zur Geschäftsschicht der Anwendung wird.

    Unterscheiden Sie die Komponente von ihrem Widget. Die Komponente besitzt den Anwendungsstatus; Das Widget verwaltet das Browserverhalten. Ereignisse verbinden sie, indem sie sinnvolle Änderungen melden, anstatt jede Browser-Interaktion zurück auf den Server zu kopieren.

    Verfolgen Sie die Daten nach außen als kompaktes JSON und dann in die Optionen des Anbieters. Verfolgen Sie wichtige Ereignisse bis zum Server zurück. Diese Adaptergrenze ermöglicht es dem Servercode, mit einem stabilen Vertrag statt mit herstellerspezifischen Details zu arbeiten.

    Überprüfen Sie TemperatureGauge im Designer. Value ist die Eigenschaft, die die Anwendung ändert; ThresholdExceeded ist das Ereignis, das es behandelt. Das Messgerät des Herstellers bleibt in dieser bekannten Wisej.NET-Komponentenschnittstelle.

    Beobachten Sie, wie der Server Value ändert und wie die Anzeige ihn rendert. Beim angezeigten Schwellenwert kehrt ein Ereignis mit nützlichen Informationen zurück. Die Anwendung reagiert auf das Überschreiten des Schwellenwerts, nicht auf jeden visuellen Animationsrahmen.

    Klassifizieren Sie Messgerät, Editor und Raster, bevor Sie Integrationscode schreiben. Ihre Ressourcen-, Daten- und Ereignisanforderungen sind unterschiedlich. Ein erster Vergleich dieser Anforderungen hilft bei der Auswahl einer ausreichenden Integrationsoberfläche ohne unnötige Komplexität.

    Schreiben Sie einen Architekturentscheidungsbericht, in dem Sie Ihre Wahl erläutern. Berücksichtigen Sie Wiederverwendungs-, Design-, Sicherheits- und Wartungsbeschränkungen. Es geht darum, die Begründung zu bewahren, damit ein anderer Entwickler später beurteilen kann, ob die Wahl noch passt.

    Senden Sie das Diagramm, die Vergleichstabelle und den Entscheidungsdatensatz zusammen. Sie sollten eine konsistente Geschichte erzählen: wo der Zustand gespeichert wird, wie das Widget kommuniziert und warum der gewählte Integrationsansatz seinen Anforderungen entspricht.

    Sie haben jetzt ein Integrationsdesign, das jemand anderes überprüfen kann. Nutzen Sie dieses gemeinsame Verständnis als Ausgangspunkt für Implementierung und Tests, anstatt ein funktionierendes Visual als die gesamte Integration zu betrachten.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 1 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Entscheidungsprotokolle zur Widget-Integration · 40 Min.

    Ziel: Erstellen Sie ein Integrations-Entscheidungsprotokoll für drei Kandidaten-Widgets: eine kleine Anzeige (Gauge), einen Rich-Text-Editor und ein Daten-Grid. Entscheiden Sie, welche Art der Integration jedes davon verdient, und begründen Sie Ihre Wahl. Ergebnisse: Diagramm der Integrationsarchitektur; Triage-Tabelle der Widgets; Erstes ADR: gewählter Integrationsansatz für jedes Kandidaten-Widget.

Modul 2: JavaScript-Grundlagen für zuverlässige Integrationen

Modul 2 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „JavaScript-Grundlagen“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Die JavaScript-Muster beherrschen, die bei Integrationen von Drittanbietern immer wieder auftauchen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionZuverlässiges JavaScript für Integrationen schreiben · 7 Min.

    Zuverlässiges JavaScript für Integrationen schreiben – ein geführter Video-Walkthrough zu Modul 2, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Beweisen Sie das Verhalten von JavaScript, bevor Sie es in Wisej.NET einschließen. Ein kleines isoliertes Beispiel hilft dabei, einen Bibliotheks- oder Sprachfehler von einem durch die Integration selbst verursachten Problem zu unterscheiden.

    Überprüfen Sie im Rückruf des Anbieters, worauf sich this bezieht. Möglicherweise handelt es sich um das Vendor-Objekt, das über keine fireWidgetEvent-Methode verfügt. Die Methode fehlt, weil der Empfänger falsch ist, nicht weil Wisej.NET das Ereignis verloren hat.

    Behalten Sie einen expliziten Verweis auf das Widget in einem Abschluss bei, binden Sie den Rückruf oder rufen Sie eine Widget-Methode auf. Jede Lösung gibt dem Rückruf eine zuverlässige Route zur richtigen Instanz, wenn der Anbieter ihn aufruft.

    Deklarieren Sie Abhängigkeiten in der erforderlichen Reihenfolge: unterstützende Bibliothek, Stile, Herstellerskript, dann Initialisierung. Packages macht diese Reihenfolge explizit und verhindert so, dass die Initialisierung ausgeführt wird, bevor die erforderlichen Ressourcen vorhanden sind.

    Verschieben Sie die bewährte Initialisierung in den InitScript von Widget und deklarieren Sie seine Ressourcen in Packages. Behalten Sie die gleichen Abhängigkeitsannahmen wie im isolierten Beispiel bei, damit sich durch die Integration nicht unbemerkt die Art und Weise ändert, wie die Bibliothek startet.

    Verwenden Sie die Browser-Entwicklertools, um die gespeicherte Anbieterinstanz zu überprüfen und valueChanged zu befolgen. Ein sourceURL gibt dem eingefügten Code einen erkennbaren Namen; Eine Debugger-Anweisung hilft dabei, dort anzuhalten, wo der Rückruf tatsächlich ausgeführt wird.

    Behalten Sie das isolierte Beispiel, die Arbeitsausführung InitScript und die Debugging-Notizen bei. Ein zukünftiger Fehler kann dann außerhalb der Integration reproduziert und mit dem tatsächlichen Widget-Setup verglichen werden.

    Die Integration verfügt nun über einen getesteten Ausgangspunkt, explizite Abhängigkeiten und einen zuverlässigen Rückrufkontext. Diese Grundlagen erleichtern das Debuggen von späterem Wrapper-Code, da das grundlegende Verhalten von JavaScript bereits verstanden wird.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 2 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Zuverlässiges Integrations-JavaScript · 40 Min.

    Ziel: Nehmen Sie ein reines JavaScript-Beispiel für ein Gauge- oder Knob-Widget und bringen Sie es zunächst in einer isolierten HTML-Seite zum Laufen. Schreiben Sie es anschließend als InitScript eines Wisej.NET-Widgets neu. Ergebnisse: Funktionierender Nachweis in reinem JavaScript; Kontextsicheres Wisej.NET-InitScript; Debugging-Notizen, die zeigen, wo die Widget-Instanz gespeichert wird.

Modul 3: Schnelle Integration mit Wisej.Web.Widget

Modul 3 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Schnelle Widget-Integration“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Wisej.Web.Widget für einmalige Integrationen, Prototypen und die schnelle Prüfung von Anbieterbibliotheken einsetzen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin Widget schnell mit Wisej.Web.Widget integrieren · 7 Min.

    Ein Widget schnell mit Wisej.Web.Widget integrieren – ein geführter Video-Walkthrough zu Modul 3, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Beginnen Sie mit einem Widget, um die Integration schnell nachzuweisen. Dadurch erhält die Anbieterbibliothek einen Platz innerhalb von Wisej.NET, bevor Sie in ein wiederverwendbares Steuerelement mit einer größeren öffentlichen Schnittstelle investieren.

    Platzieren Sie den Widget auf dem Armaturenbrett und halten Sie das erste Exemplar klein. Die unmittelbare Frage ist, ob die Ressourcen geladen werden und das Anbieterobjekt in seinem Container ausgeführt werden kann, und nicht, ob die Abstraktion abgeschlossen ist.

    Geben Sie Packages, Options und InitScript separate Jobs an. Packages lädt Abhängigkeiten, Options trägt die aktuellen Daten und InitScript erstellt das Visual. Wenn diese Rollen klar bleiben, lässt sich eine fehlgeschlagene Integration leichter diagnostizieren.

    Erstellen Sie die Anbieterinstanz während der Initialisierung und aktualisieren Sie dann die vorhandene Instanz, wenn sich die Optionen ändern. Wenn Sie es bei jedem Update neu erstellen, können Handler dupliziert werden oder der Status des aktuellen Widgets verloren gehen.

    Verwenden Sie die Serverschaltfläche, um Options zu ändern und beobachten Sie, wie das Update das Bild aktualisiert. Ein Anruf in der Warteschlange verarbeitet einen zwingenden Befehl. Unterscheiden Sie zwischen der Änderung des dauerhaften Widget-Status und der Anforderung einer einmaligen Client-Aktion.

    Senden Sie die Ressourcendeklarationen, die Initialisierung, die Aktualisierungslogik und die Serverinteraktion zusammen. Sie sollten sowohl die erste Erstellung als auch spätere Änderungen demonstrieren. Die Wiederverwendung über mehrere Bildschirme hinweg ist der nächste Grund für die Einführung eines Wrappers.

    Der Prototyp hat nun gezeigt, dass die Bibliothek innerhalb von Wisej.NET laden, rendern und reagieren kann. Übertragen Sie diese bewährten Verhaltensweisen in eine wiederverwendbare Hülle, anstatt den Prototyp auf jede Seite zu kopieren.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 3 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Schnelle Widget-Integration · 40 Min.

    Ziel: Erstellen Sie eine Dashboard-Seite mit zwei einmaligen Widgets: einer einfachen Anzeige (Gauge) und einem Knob im jQuery-Stil. Beide müssen sich aktualisieren, wenn sich serverseitige Eigenschaften ändern. Ergebnisse: Konfigurierte Widget-Packages; Implementierung von InitScript und update; Server-Schaltfläche, die Widget-Optionen ändert und den Client aufruft.

Modul 4: Wiederverwendbare Widget-Klassen und designerfreundliche Eigenschaften

Modul 4 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Wiederverwendbare Widget-Klassen“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Von einmaligen Widget-Instanzen zu wiederverwendbaren serverseitigen Klassen mit typisierten Eigenschaften und kontrolliertem Setup übergehen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEine wiederverwendbare, designerfreundliche Widget-Klasse erstellen · 7 Min.

    Eine wiederverwendbare, designerfreundliche Widget-Klasse erstellen – ein geführter Video-Walkthrough zu Modul 4, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Verschieben Sie wiederholte Widget-Einrichtungen in eine wiederverwendbare Klasse. Wenn sich Ressourcenpfade oder Initialisierungen ändern, sollte eine verwaltete Implementierung jeden Bildschirm bedienen, anstatt Änderungen an mehreren kopierten Skripten zu erfordern.

    Lassen Sie SimpleGauge das Verhalten von Wisej.NET Widget erben und dessen Packages, Options und InitScript besitzen. Die Seite sollte nach dem Messgerätverhalten in der Klasse fragen, ohne zu wissen, wie die Anbieterbibliothek zusammengestellt ist.

    Machen Sie Value, Minimum, Maximum und Caption als typisierte Eigenschaften verfügbar. Beschreibungen und Kategorien helfen dem Designer-Benutzer bei der Auswahl gültiger Einstellungen, während der Wrapper diese Einstellungen intern in die Optionen des Anbieters übersetzt.

    Halten Sie die unterstützten Eigenschaften öffentlich und blenden Sie gegebenenfalls Implementierungsdetails aus. Wenn Aufrufer Initialisierungs- oder Rohoptionen frei ersetzen können, können sie die Garantien umgehen, die den Wrapper zuverlässig machen.

    Platzieren Sie die Klasse auf einer Demonstrationsseite und ändern Sie sie über normale Eigenschaften. Das Fehlen von seitenspezifischem InitScript ist ein nützlicher Beweis: Das Integrationswissen steckt tatsächlich in der wiederverwendbaren Klasse.

    Stellen Sie die Klasse mit dokumentierten Eigenschaften, Standardwerten und einer sauberen Beispielseite bereit. Ein Prüfer sollte in der Lage sein, es zu instanziieren und die unterstützten Einstellungen zu verstehen, ohne das Initialisierungsskript des Anbieters öffnen zu müssen.

    Eine gute Verpackung macht den normalen Betrieb unkompliziert und verhindert einen versehentlichen Missbrauch. Bewerten Sie die öffentliche Schnittstelle aus der Sicht des Seitenautors, nicht nur aus der Sicht der Person, die die Integration erstellt hat.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 4 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Wiederverwendbare Widget-Klasse · 40 Min.

    Ziel: Überführen Sie den Gauge-Prototyp per Refactoring in `IntegrationLab.Controls.SimpleGauge`, mit typisierten Eigenschaften und standardmäßiger Ressourcenregistrierung. Ergebnisse: Wiederverwendbare, von Widget abgeleitete Klasse; Typisierte Eigenschaften mit Standardwerten; Demoseite, die die Klasse ohne eigenes InitScript auf der Seite verwendet.

Modul 5: Eigene Wisej-Controls, Client-Klassen und Theming

Modul 5 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Eigene Controls und Theming“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Controls mit nativem Look-and-Feel aus Serverklassen, Client-Widget-Klassen, Appearance-Keys und eingebetteten Ressourcen erstellen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin eigenes Control, eine Client-Klasse und ein Theme erstellen · 7 Min.

    Ein eigenes Control, eine Client-Klasse und ein Theme erstellen – ein geführter Video-Walkthrough zu Modul 5, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Erstellen Sie ein benutzerdefiniertes Steuerelement, wenn sich die Integration wie ein Teil von Wisej.NET selbst verhalten muss. Das Ziel ist eine wiederverwendbare Komponente, die am Entwurfszeitverhalten und der Themengestaltung beteiligt ist, und nicht nur ein gehostetes visuelles Element.

    Vergleichen Sie einen Widget-Wrapper mit einem Control auf Plattformebene. Wählen Sie die stärkere Integration, wenn natives Verhalten und Themenbeteiligung dies rechtfertigen; Zusätzliche Implementierungsarbeit sollte eine echte Wiederverwendungsanforderung erfüllen.

    Koppeln Sie den Server SimpleGaugeControl mit seiner Client-Klasse unter Platform. Die beiden Klassen haben unterschiedliche Verantwortlichkeiten: Der Server stellt den Anwendungsstatus bereit, während der Client implementiert, wie dieser Status im Browser angezeigt wird und sich verhält.

    Verwenden Sie OnWebRender, um eine bewusste Client-Konfiguration zu erstellen. Schließen Sie die zum Rendern des Messgeräts erforderlichen Eigenschaften ein, anstatt nicht verwandte Serverobjekte zu serialisieren. Eine kleine explizite Grenze ist einfacher zu begründen und aufrechtzuerhalten.

    Verbinden Sie den Darstellungsschlüssel mit der Designdefinition. Dadurch kann das Design die visuellen Entscheidungen steuern, anstatt für jeden Bildschirm, der das Steuerelement verwendet, ein separates Erscheinungsbild fest zu programmieren.

    Überprüfen Sie das Steuerelement im Designer und probieren Sie seine Größen- und Designeinstellungen aus. Das Design-Time-Rendering ist Teil der Integration: Andere Entwickler müssen die Steuerung anordnen, ohne zuerst die gesamte Anwendung auszuführen.

    Reichen Sie beide Klassen, den Auftrittseintrag und den Entwurfszeitnachweis ein. Zusammen demonstrieren sie den vollständigen Pfad von der Servereigenschaft zu einem thematischen Steuerelement, das ein anderer Entwickler visuell platzieren kann.

    Beobachten Sie auf dem Dashboard, wie mehrere Instanzen dieselbe Steuerungsimplementierung nutzen. Ihre Werte variieren, aber ihr Verhalten und ihre Themenintegration bleiben konsistent. Diese Konsistenz ist der Vorteil der einmaligen Kapselung der Integration.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 5 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Eigenes Control, Client-Klasse und Theme · 40 Min.

    Ziel: Erstellen Sie ein eigenes `SimpleGaugeControl` mit einer Serverklasse und einer Client-Klasse unter `/Platform`. Fügen Sie einen einfachen Appearance-Key hinzu und sorgen Sie dafür, dass es im Designmodus gerendert wird. Ergebnisse: Server-Control-Klasse; Grundgerüst der qx-Client-Klasse; Theme-/Appearance-Eintrag; Screenshot oder Notizen zur Entwurfszeit.

Modul 6: Client-Server-Aufrufe, Serialisierung und Objektzugriff

Modul 6 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Client-Server-Aufrufe“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Daten und Befehle sicher zwischen .NET-Komponenten und Browser-Widgets austauschen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionClient-Server-Aufrufe und Serialisierung verdrahten · 7 Min.

    Client-Server-Aufrufe und Serialisierung verdrahten – ein geführter Video-Walkthrough zu Modul 6, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Entscheiden Sie, ob jede Interaktion einen Befehl sendet oder ein Ergebnis benötigt. Diese Unterscheidung bestimmt, wie der Servercode weiterläuft, welche Daten die Grenze überschreiten und ob er auf eine Browserantwort warten muss.

    Verwenden Sie Call, wenn der Browser eine Aktion ausführen soll und kein Rückgabewert erforderlich ist. Der Befehl befindet sich in der Warteschlange, sodass nachfolgender Servercode nicht davon ausgehen darf, dass der Browser die Ausführung bereits abgeschlossen hat.

    Verwenden Sie CallAsync oder EvalAsync, wenn der nächste Schritt von einem Browserergebnis abhängt. Warten Sie den Vorgang ab, bevor Sie dieses Ergebnis verwenden, damit der Workflow der Antwort folgt und nicht mit fehlenden Daten fortfährt.

    Definieren Sie ein kleines Datenübertragungsobjekt und überprüfen Sie seine serialisierten Eigenschaftsnamen. Der Browser erhält den serialisierten Vertrag, nicht das ursprüngliche C#-Objekt. Explizite Felder vermeiden die Offenlegung unabhängiger Zustände und reduzieren Namenskonflikte.

    Vergleichen Sie die Live-Operationen: Ein Befehl ändert die Anzeige, ein erwarteter Aufruf liest seine gerenderte Größe und ein kompaktes Objekt gibt den Auswahlstatus zurück. Jeder Austausch überträgt nur das, was diese bestimmte Interaktion erfordert.

    Geben Sie Beispiele für unidirektionale Befehle und erwartete Ergebnisse sowie den Rückgabedatenvertrag an. Ein Prüfer sollte erkennen können, wo die Ausführung wartet und welche Felder der Browser zurückgeben darf.

    Halten Sie die Grenze rund um Befehle, Ergebnisse und explizite Datenverträge organisiert. Dadurch werden Timing und Verantwortung sichtbar, was zuverlässiger ist, als Browsercode als synchrone Erweiterung des Servers zu behandeln.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 6 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Client-Server-Aufrufe und Serialisierung · 40 Min.

    Ziel: Ergänzen Sie die wiederverwendbare Gauge um Befehle: Wert setzen, gerenderte Größe auslesen, Animation zurücksetzen und ausgewählten clientseitigen Zustand an den Server zurückgeben. Ergebnisse: Methodenaufrufe vom Server zum Client; Ein Beispiel für `CallAsync` oder `EvalAsync`; DTO für die Rückgabe des Client-Zustands.

Modul 7: Events, Handler und Event-Verträge für Widgets

Modul 7 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Events und Verträge“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Callbacks des Anbieters in stabile .NET-Events verwandeln, ohne dass die Komplexität des Anbieters in die Anwendung durchsickert. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionWidget-Events und Handler-Verträge definieren · 7 Min.

    Widget-Events und Handler-Verträge definieren – ein geführter Video-Walkthrough zu Modul 7, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Behandeln Sie Rückrufe von Anbietern als Roheingaben für die Integration. Die Anwendung benötigt einen stabilen Satz aussagekräftiger Ereignisse, daher muss der Adapter entscheiden, was weitergeleitet werden soll, anstatt jede Anbieterbenachrichtigung direkt offenzulegen.

    Trennen Sie visuelle Aktivitäten von Anwendungsentscheidungen. Zeigerbewegungen oder Animationen können lokal bleiben, während eine sinnvolle Auswahl oder Statusänderung möglicherweise den Server erfordert. Das Filtern an dieser Grenze vermeidet unnötigen Datenverkehr und Handlerarbeit.

    Registrieren Sie den Anbieterrückruf einmal während der Initialisierung und leiten Sie ein kompaktes benanntes Ereignis weiter. Eine erneute Registrierung bei jedem Update kann dazu führen, dass eine Benutzeraktion unerwartet mehrere Server-Handler auslöst.

    Verwenden Sie die Ereignisroute, die der Integrationsoberfläche entspricht. Widgets weiterleiten über fireWidgetEvent und WidgetEvent; Benutzerdefinierte Steuerelemente verwenden ihre Clientereignisse und OnWebEvent. Durch das Mischen der Routen werden Daten an den falschen Verarbeitungsmechanismus gesendet.

    Definieren Sie jeden Ereignisnamen und jede Nutzlast, bevor Sie die Handler verbinden. Schwellenwertüberschreitungen, Wertänderungen und Punktauswahlen erfordern unterschiedliche Informationen. Kleine explizite Verträge machen deutlich, worauf sich ein Server-Handler verlassen kann.

    Interagieren Sie mit der Anzeige, dem Knopf und dem Diagramm und verfolgen Sie die Ereignisse, die den Server erreichen. Stellen Sie sicher, dass jede Nutzlast die relevanten Werte enthält und dass die lokale visuelle Aktivität nicht zu einem Strom unnötiger Servernachrichten geworden ist.

    Senden Sie gepaarte Client- und Server-Handler mit der Vertragstabelle. Ein Prüfer sollte in der Lage sein, jedes Ereignis von seinem Browser-Auslöser bis zur Serverentscheidung zu verfolgen, einschließlich der genauen Angabe, welche Daten die Grenze überschreiten.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 7 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Event-Verträge für Widgets · 40 Min.

    Ziel: Fügen Sie serverseitige Events für das Überschreiten eines Gauge-Schwellenwerts, die Wertänderung eines Knobs und den Klick auf einen Diagrammpunkt hinzu. Normalisieren Sie alle Event-Payloads in einfache DTOs. Ergebnisse: Drei Event-Handler auf dem Client; Drei serverseitige Event-Handler; Tabelle der Payload-Verträge.

Modul 8: Postback, WebRequest, WebMethod und Datenendpunkte

Modul 8 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Datenendpunkte“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    JavaScript-Widgets, die ihre Daten per Ajax abrufen, mit Daten versorgen und die Anfragen dabei im Kontext der richtigen Wisej.NET-Komponente halten. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionDatenendpunkte mit Postback und WebMethod erstellen · 7 Min.

    Datenendpunkte mit Postback und WebMethod erstellen – ein geführter Video-Walkthrough zu Modul 8, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Einige Anbieter-Widgets rufen ihre eigenen Daten ab, anstatt alles über Options zu empfangen. Geben Sie diesen Anfragen einen expliziten Endpunkt und behalten Sie den richtigen Komponentenkontext bei, sodass die Antwort dem vorgesehenen Benutzer und Widget gehört.

    Verwenden Sie getPostbackUrl, wenn ein Widget eine Datenadresse erwartet. Es leitet die Anfrage an die entsprechende Sitzung und Komponenteninstanz weiter. Die Adresse liefert Kontext, aber der Handler muss den angeforderten Vorgang noch validieren.

    Überprüfen Sie in WebRequest die angeforderte Aktion, bevor Sie Daten erstellen. Legen Sie den Inhaltstyp JSON fest und schreiben Sie die erwartete Antwortform. Eine gültige Transportantwort reicht nicht aus, wenn das Widget seinen Inhalt nicht interpretieren kann.

    Verwenden Sie einen WebMethod für einen typisierten Vorgang, den Ihr Clientcode direkt aufruft. Argumente und der zurückgegebene Wert bilden den Vertrag, sodass der Aufrufer auf ein Ergebnis warten kann, anstatt eine Datenanforderung im Besitz des Widgets zu verwalten.

    Wählen Sie den Endpunktstil danach aus, wer die Anfrage initiiert und steuert. Eine Anbieterdatenquelle verwendet natürlich ihre Adresse; Anwendungscode, der eine benannte Operation aufruft, profitiert von einer typisierten Methode und einem expliziten Ergebnis.

    Folgen Sie der Anforderung des Rasters an den Postback-Handler und zurück zu den gerenderten Zeilen. Überprüfen Sie die Antwortstruktur an dieser Grenze. Ein leeres Raster kann auf eine Vertragsinkongruenz hinweisen, auch wenn die Anfrage selbst erfolgreich war.

    Stellen Sie beide Endpunktbeispiele bereit und erläutern Sie die beabsichtigten Aufrufer. Überprüfen Sie die Autorisierung und Eingabevalidierung für jeden Pfad. Die Wahl eines geeigneten Endpunktmechanismus entbindet niemals die Verantwortung des Servers, den Betrieb zu schützen.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 8 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Datenendpunkte (Postback / WebMethod) · 40 Min.

    Ziel: Implementieren Sie für denselben schreibgeschützten Datensatz sowohl einen Postback-Endpunkt als auch einen WebMethod-Endpunkt. Verbinden Sie mit jedem ein einfaches Widget und vergleichen Sie die Vor- und Nachteile. Ergebnisse: Postback-Handler für WebRequest; WebMethod mit Argumenten und Rückgabewert; Vergleichsnotiz: URL-Datenquelle vs. Client-Callback.

Modul 9: Komplexe datengebundene Widgets: allgemeine Muster mit Beispielen für Kendo und DevExtreme

Modul 9 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Komplexe Daten-Widgets“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Umfangreiche Daten-Widgets integrieren, ohne den Kurs von einer einzigen Anbieterbibliothek abhängig zu machen. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin komplexes datengebundenes Widget integrieren · 7 Min.

    Ein komplexes datengebundenes Widget integrieren – ein geführter Video-Walkthrough zu Modul 9, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Verwenden Sie die Raster- und Pivot-Beispiele, um das Integrationsmuster unter der herstellerspezifischen Syntax zu identifizieren. Unabhängig von der gewählten Bibliothek benötigt die Anwendung weiterhin das Laden von Ressourcen, Datenoperationen, Ereignisse und eine stabile Wisej.NET-Schnittstelle.

    Geben Sie dem Adapter das Eigentum an Erstellung, Optionen, Ereignissen und Datenzugriff. Durch die Zusammenhaltung dieser anbieterbezogenen Details wird verhindert, dass einzelne Seiten ihre eigenen inkompatiblen Versionen derselben Integration entwickeln.

    Vergleichen Sie DataSource und CustomStore anhand der von ihnen angeforderten Operationen, nicht nur anhand ihrer Syntax. Beide benötigen einen Pfad zum Laden und Ändern von Daten. Der Adapter übersetzt seine Argumente in den Vertrag Ihres Servers.

    Definieren Sie Paging, Sortierung und Filterung in GridOperationRequest, bevor Sie Handler implementieren. Validieren Sie diese Eingaben auf dem Server und ordnen Sie sie dann dem unterstützten Vorgang zu. Vom Browser bereitgestellte Abfrageanweisungen sind immer noch nicht vertrauenswürdige Eingaben.

    Geben Sie separate Nutzlasten für Zeilenänderungen, Einfügungen, Löschungen und Auswahlereignisse an. Jeder sollte den beabsichtigten Vorgang und die erforderlichen Werte identifizieren, ohne eine ganze Komponente zu senden oder einen nicht zugehörigen Serverstatus offenzulegen.

    Verfolgen Sie das Paginieren, Sortieren und Bearbeiten über denselben Serververtrag, während der Pivot seine Daten lädt. Die gemeinsame Grenze sorgt dafür, dass Anwendungsvorgänge auch dann verständlich bleiben, wenn die Browser-Widgets Schnittstellen unterschiedlicher Anbieter verwenden.

    Übermitteln Sie den Betriebsvertrag, die Handler, die Event-Nutzlasten und den Pivot-Plan als einen zusammenhängenden Entwurf. Ein Prüfer sollte in der Lage sein, jede sichtbare Datenaktion mit einem expliziten, validierten Servervorgang zu verknüpfen.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 9 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Komplexe datengebundene Widgets · 40 Min.

    Ziel: Erstellen Sie zwei fortgeschrittene Beispiele: ein schreibgeschütztes Widget im Pivot-Stil und ein bearbeitbares Widget im Grid-Stil. Eines kann die DataSource-Semantik im Kendo-Stil verwenden, das andere die CustomStore-Semantik im DevExtreme-Stil. Ergebnisse: Integrationsplan für das schreibgeschützte Pivot; Operationsvertrag für das bearbeitbare Grid; Server-Handler oder Stubs für Load/Update/Insert/Delete; Event-Payload-Verträge für Zellenklick und Zeilenaktualisierung.

Modul 10: Produktionsreife, Fehlersuche und Abschlussprojekt

Modul 10 von Kurs Anwendungsintegration – der Wisej.NET-Integrationspfad. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Video-Walkthrough „Produktivbetrieb und Abschlussprojekt“ an, bestehen Sie den Wissenstest und schließen Sie anschließend das praktische Lab ab.

  1. LektüreLektionsleitfaden · 12 Min.

    Integrationen für echte Anwendungen vorbereiten: Performance, Diagnose, Hintergrundaktualisierungen, Paketierung, Versionierung und Wartbarkeit. Was das für Entwickler bedeutet, die mit Wisej.NET integrieren – und wie Sie dieses Modul lesen sollten.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab erstellen, der empfohlene Arbeitsablauf, die geforderten Ergebnisse und der Selbstcheck vor der Abgabe.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin produktivreifes Integrations-Abschlussprojekt ausliefern · 7 Min.

    Ein produktivreifes Integrations-Abschlussprojekt ausliefern – ein geführter Video-Walkthrough zu Modul 10, den Sie direkt hier im Player ausführen können.

    Transkript der Sprecherstimme

    Betrachten Sie die Integration als etwas, das wiederholter Nutzung und Bereitstellung standhalten muss. Ein erfolgreiches erstes Rendering beweist nur einen Weg; Die Produktivreife hängt auch von der Fehlerbehandlung, Updates, Bereinigung und wartbaren Verträgen ab.

    Überprüfen Sie Ressourcenpfade, Ereignisvolumen, Lebenszyklusbereinigung, Timing und realistische Datengrößen. Diese Bedenken können bei einer kleinen Demonstration verborgen bleiben und dann zu Fehlern werden, wenn dasselbe Widget wiederverwendet oder an anderer Stelle bereitgestellt wird.

    Name injiziert Skripte mit sourceURL und schlägt eindeutig fehl, wenn Voraussetzungen fehlen. Vergleichen Sie das Beispiel des isolierten Anbieters mit der integrierten Version. Das gibt Ihnen Hinweise darauf, wo der Fehler beginnt, anstatt sich auf Vermutungen zu verlassen.

    Aktualisieren Sie die vorhandene Anbieterinstanz und zerstören Sie sie, wenn die Kontrolle verworfen wird. Wiederholte Erstellungs- und Schließzyklen sollten Handler oder Objekte nicht am Leben lassen, nachdem ihr Bildschirm verschwunden ist.

    Starten Sie die Hintergrundverarbeitung über Application.StartTask. Wenn das Ergebnis vorliegt, aktualisieren Sie den Client und rufen Sie Application.Update auf. Erst wenn der Browser den neuen Status des Servers tatsächlich anzeigen kann, ist der Workflow abgeschlossen.

    Integrieren Sie ein unbekanntes Widget mit denselben Grenzen: einen wiederverwendbaren Wrapper, Serverbefehle, ein bedeutungsvolles Ereignis und einen geschützten Datenendpunkt. Die Übung testet, ob Sie das Muster über die Beispiele des Kurses hinaus übertragen können.

    Überprüfen Sie das Dashboard als mehrere Integrationen, die zusammenarbeiten. Verfolgen Sie Ereignisse, Aufrufe, Laden und Löschen für jedes Widget. Der gemeinsam genutzte visuelle Raum sollte nicht verwischen, welcher Wrapper die jeweilige Ressource und Interaktion besitzt.

    Schließen Sie mit einem Wrapper ab, den ein anderer Entwickler verstehen, testen und wiederverwenden kann. Erläutern Sie den öffentlichen Auftrag und den Lebenszyklus, einschließlich des Fehlerverhaltens. Das dauerhafte Ergebnis ist eine wartbare Integration und nicht nur eine beeindruckende Demonstration.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt IntegrationLab dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten, auch im Vergleich mit unserem eigenen Referenz-Build auf GitHub.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 10 · 12 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Produktionsreife und Abschlussprojekt · 40 Min.

    Ziel: Abschlussprojekt: Integrieren Sie ein Ihnen unbekanntes Widget eines Drittanbieters als wiederverwendbaren Wisej.NET-Wrapper, einschließlich Serveraufrufen, mindestens eines Events und des Datenladens per Postback oder WebMethod. Ergebnisse: Implementierung des Abschlussprojekts; Integrations-ADR; Checkliste für Ressourcen und Sicherheit; Demo-Skript und Notizen zur Fehlersuche.