Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Gepubliceerd: november 2016
Is van toepassing op: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016
U kunt een webtoepassingsadapter maken als u webtoepassingen wilt uitbreiden en wijzigen waarvoor u geen toegang tot de broncode hebt of geen bevoegdheid hebt om wijzigingen aan te brengen door middel van beheerde code.Microsoft Dynamics 365 biedt een Microsoft Visual Studio-sjabloon voor het maken van een webtoepassingsadapter. De sjabloon bevat elementaire code als opmerkingen om u te helpen snel aan de slag te gaan met het maken van de webtoepassingsadapter.
In dit overzicht maakt u een externe webtoepassing genaamd QsWebApplication en host u deze in Unified Service Desk. U gebruikt en configureert vervolgens een webtoepassingadapter genaamd MyWebApplicationAdapter waarmee de externe webtoepassing kan communiceren Unified Service Desk. De webtoepassing heeft vier labels, voor de voornaam, de achternaam, het adres en de id van de klant, en vier corresponderende tekstvakken om de Unified Service Desk-waarden weer te geven.
In dit onderwerp
Vereisten
Stap 1: Een voorbeeldwebtoepassing maken
Stap 2: De webtoepassing configureren in Dynamics 365
Stap 3: De webtoepassing testen
Step 4: De webtoepassingsadapter maken
Stap 5: De webtoepassingsadapter configureren in Dynamics 365
Stap 6: De webtoepassingsadapter testen
Vereisten
Microsoft .NET Framework 4.5.2
Unified Service Desk-clienttoepassing, vereist om het gehoste besturingselement te testen.
Microsoft Visual Studio 2012, Visual Studio 2013 of Visual Studio 2015
NuGet Pakketbeheer voor Visual Studio 2012, Visual Studio 2013 of Visual Studio 2015
Microsoft Dynamics 365 SDK-sjablonen voor Visual Studio die de projectsjabloon voor het gehoste UI-besturingselement bevatten. U kunt het via een van de volgende opties krijgen:
Download de CRM SDK-sjabloon. Dubbelklik op het CRMSDKTemplates.vsix bestand om het sjabloon te installeren in Visual Studio.
Download het CRM SDK-pakket en pak het uit. Ga naar de map SDK\Templates. Dubbelklik op het CRMSDKTemplates.vsix bestand om het sjabloon te installeren in Visual Studio.
Stap 1: Een voorbeeldwebtoepassing maken
Dubbelklik op het pakketbestand om de inhoud uit te pakken.
Navigeer naar de map <ExtractedFolder>\UII\SampleCode\UII\AIF\QsWebApplication en open het bestand Microsoft.Uii.QuickStarts.QsWebApplication.csproj in Visual Studio.
Druk op F5 of kies Foutopsporing > Foutopsporing starten om de voorbeeldwebtoepassing lokaal op uw computer te hosten. De toepassing wordt gehost op https://localhost:2627/.
.jpeg)
Stap 2: De webtoepassing configureren in Dynamics 365
Aanmelden bij Microsoft Dynamics 365.
Ga naar Instellingen > Unified Service Desk.
Kies Gehoste besturingselementen
Kies Nieuw.
Geef op de pagina Nieuw gehost besturingselement de volgende waarden op.
Veld
Waarde
Naam
QsWebApplication
Onderdeeltype van Volledige servicedesk
CCA-gehoste toepassing
Gehoste toepassing
Op web gehoste toepassing
Toepassing is algemeen
Ingeschakeld
Weergavegroep
MainPanel
Adapter
Geen adapter gebruiken
Toepassing is dynamisch
Nee
Toepassingen hosten
SetParent gebruiken
URL
Geef de locatie op waar uw webtoepassing wordt gehost. In dit geval is dat https://localhost:2627/.
.jpeg)
Kies Opslaan.
Stap 3: De webtoepassing testen
Zorg ervoor dat de voorbeeldwebtoepassing die u stap 1 hebt gemaakt nog actief is.
Voer de Unified Service Desk-client uit om verbinding te maken met uw Microsoft Dynamics 365-server.
Als u met succes bent aangemeld, ziet u het Voorbeeld van externe webtoepassing op uw bureaublad.
Klik op het tabblad Voorbeeld van externe webtoepassing om uw webtoepassing gehost in Unified Service Desk te zien.
.jpeg)
Notitie
Op dit moment zijn de velden leeg omdat u de alleen de externe webtoepassing host in Unified Service Desk. Als we ze willen vullen met waarden uit Unified Service Desk, moeten we een webtoepassingadapter maken zoals aangegeven in de volgende stap.
Step 4: De webtoepassingsadapter maken
Start Microsoft Visual Studio, en maak een nieuw project.
In het dialoogvenster Nieuw project:
Vouw in de lijst met geïnstalleerde sjablonen links Visual C# uit en selecteer Dynamics 365 SDK-sjablonen > Unified Service Desk > UII-webtoepassingsadapter.
Geef de naam en locatie van het project op en klik op OK om een nieuw project te maken.
.jpeg)
Kies WebAppAdapter.cs en werk de definitie van NotifyContextChange bij met de volgende code om de tekstvelden te vullen vanuit de contextinformatie.Meer informatie:NotifyContextChange
public override bool NotifyContextChange(Context context) { // Populating text fields from context information. HTMLDocument htmlDoc = Browser.Document as HTMLDocument; if (htmlDoc != null) { IHTMLElementCollection htmlElementCollection = htmlDoc.all; IHTMLElement htmlFirstName = htmlElementCollection.item("txtFirstName", 0) as IHTMLElement; htmlFirstName.setAttribute("value", context["firstname"], 0); IHTMLElement htmlLastName = htmlElementCollection.item("txtLastName", 0) as IHTMLElement; htmlLastName.setAttribute("value", context["lastname"], 0); IHTMLElement htmlAddress = htmlElementCollection.item("txtAddress", 0) as IHTMLElement; htmlAddress.setAttribute("value", context["address1_line1"], 0); IHTMLElement htmlID = htmlElementCollection.item("txtID", 0) as IHTMLElement; htmlID.setAttribute("value", context["CustomerID"], 0); } return base.NotifyContextChange(context); }Voeg de volgende code toe aan de overschrijvingsdefinitie van DoAction om de toepassing bij te werken met waarden uit Unified Service Desk
public override bool DoAction(HostedWebApplication.WebAction action, ref string data) { Trace.WriteLine(string.Format("{0}>>>>> RECEIVED (WebAction) Action : {1} ", this.Name, action.Name)); // Check to see if the browser is working on something before allowing the system to do 'normal' behavior. if (Browser.WebBrowser.ReadyState != tagREADYSTATE.READYSTATE_COMPLETE) { // Browser is not in a state to process this request, Queue it for when the browser is ready to handle it. Trace.WriteLine(string.Format("{0}>>>>> Browser Busy,({2}) Queuing Action : {1} ", this.Name, action.Name, Browser.WebBrowser.ReadyState.ToString())); qReqActionList.Enqueue(new BrowserActionData(action, data)); return false; } Trace.WriteLine(string.Format("{0}>>>>>>>>>>> Action:Name={1} Action:Url={2} Action:Query={3} Action:Init={4}", this.Name, action.Name, action.Url, action.QueryString, action.Initialization)); // Get browser DOM and element collection. // Create an XML Document to load the passed in data to. HTMLDocument htmlDoc = Browser.Document as HTMLDocument; IHTMLElementCollection htmlElementCollection = htmlDoc.all; // Check action name for something we know how to process. switch (action.Name) { case "UpdateFirstName": IHTMLElement htmlFirstName = htmlElementCollection.item("txtFirstName", 0) as IHTMLElement; htmlFirstName.setAttribute("value", data, 0); break; case "UpdateLastName": IHTMLElement htmlLastName = htmlElementCollection.item("txtLastName", 0) as IHTMLElement; htmlLastName.setAttribute("value", data, 0); break; case "UpdateAddress": IHTMLElement htmlAddress = htmlElementCollection.item("txtAddress", 0) as IHTMLElement; htmlAddress.setAttribute("value", data, 0); break; case "UpdateID": IHTMLElement htmlID = htmlElementCollection.item("txtID", 0) as IHTMLElement; htmlID.setAttribute("value", data, 0); break; } return false; }Sla uw project op en maak het (Maken > Oplossing maken). Nadat het project met succes is gemaakt, wordt een assembly (MyWebApplicationAdapter.dll) gegenereerd in de map \bin\debug van uw projectmap. U hebt deze assembly later nodig om te testen en uw webtoepassingadapter te gebruiken.
Stap 5: De webtoepassingsadapter configureren in Dynamics 365
Aanmelden bij Microsoft Dynamics 365.
Kies op de navigatiebalk Microsoft Dynamics 365 en selecteer Instellingen.
Kies Instellingen > Unified Service Desk > Gehoste besturingselementen.
Selecteer in de lijst met gehoste besturingselementen QsWebApplication.
.jpeg)
Geef in het gedeelte Adapterconfiguratie de volgende waarden op.
Veld
Waarde
Adapter
Adapter gebruiken
URI
MyWebApplicationAdapter
Type
MyWebApplicationAdapter.WebAppAdapter
.jpeg)
Notitie
URI is de naam van uw assembly en het Type is de naam van uw assembly (dll) gevolgd door een punt (.) en vervolgens de klassenaam in uw Visual Studio-project. In dit voorbeeld is de naam van de assemblage MyWebApplicationAdapter en de naam van de klasse WebAdapter, wat de standaardklassenaam is wanneer u een webtoepassingsadapter maakt.
Kies Opslaan om de wijzigingen op te slaan.
Stap 6: De webtoepassingsadapter testen
Kopieer de assembly die de definitie van uw webtoepassingadapter bevat uit uw Visual Studio-projectuitvoermap ((<ProjectFolder>\bin\debug) naar de toepassingsdirectory van Unified Service Desk. In dit geval kopieert u het bestand MyWebApplicationAdapter.dll naar de directory c:\Program Files\Microsoft Dynamics CRM USD\USD.
Voer de Unified Service Desk-client uit om verbinding te maken met uw Microsoft Dynamics 365-server.
Als u met succes bent aangemeld, ziet u de voorbeeldknop voor de externe webtoepassing op uw bureaublad.
Kies Zoeken en vervolgens Contactpersonen en selecteer een contactpersoon. Selecteer in dit geval Patrick Sands.
.jpeg)
Klik op Voorbeeld van externe webtoepassing. U ziet dan dat de voornaam, de achternaam, het adres en de id van de klant gevuld worden.
.jpeg)
Notitie
Dit overzicht liet zien hoe u gegevens uit Unified Service Desk leest en weergeeft in de externe webtoepassing. Als u de gegevens in Unified Service Desk wilt bijwerken vanuit de externe toepassing en andersom raadpleegt u Overzicht: Een gehost UII Windows Forms-besturingselement maken
Zie ook
UII-adapters gebruiken om te communiceren met externe toepassingen en webtoepassingen
Unified Service Desk 2.0
© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht