Ontwikkeling

Visual Studio & .NET Framework 4.6.2 voor Dynamics 365

30 oktober 2024
Sabhat Qureshi
7 min. leestijd

Waarom Visual Studio voor Dynamics 365?

Visual Studio is de officiële geïntegreerde ontwikkelomgeving (IDE) voor het ontwikkelen van Dynamics 365-plugins, aangepaste workflowactiviteiten en server-side maatwerk. Er bestaan alternatieve IDE's, maar Visual Studio biedt de meest uitgebreide toolset voor Dynamics 365-ontwikkeling.

Als Dynamics 365-consultant heb ik gewerkt met ontwikkelomgevingen gaande van eenvoudige teksteditors tot volledig uitgeruste IDE's. Visual Studio springt eruit, niet alleen door zijn functies, maar ook door de rechtstreekse ondersteuning van Microsoft, de uitgebreide documentatie en het ecosysteem van extensies die specifiek voor Power Platform- en Dynamics 365-ontwikkeling zijn ontworpen.

De vereisten rond .NET Framework 4.6.2

Waarom .NET Framework 4.6.2?

Dynamics 365-plugins en aangepaste workflowactiviteiten moeten specifiek .NET Framework 4.6.2 als doelframework hebben. Dat is geen loutere aanbeveling: het is een harde vereiste die het Dynamics 365-platform afdwingt.

Belangrijkste vereisten:

  • Alle pluginassemblies moeten exact .NET Framework 4.6.2 als doelframework hebben
  • Ook aangepaste workflowactiviteiten moeten .NET Framework 4.6.2 gebruiken
  • Gemengde .NET Standard-bibliotheken worden niet ondersteund in pluginassemblies
  • Het framework moet op de ontwikkelmachines geïnstalleerd zijn om te kunnen compileren
  • Plugins draaien in een sandbox met beperkte toegang tot API's

⚠️ Belangrijk:

Ook als u .NET Framework 4.7 of 4.8 hebt geïnstalleerd, moet u in uw projectinstellingen expliciet 4.6.2 als doelframework kiezen. De runtime van het Dynamics 365-platform gebruikt 4.6.2, en een hogere versie kan tot compatibiliteitsproblemen leiden.

Het .NET Framework 4.6.2 Developer Pack installeren

Het .NET Framework 4.6.2 Developer Pack bevat het targeting pack, de runtime en de SDK-onderdelen die u nodig hebt om te ontwikkelen.

Installatiestappen:

  1. Ga naar de downloadpagina van Microsoft .NET Framework 4.6.2
  2. Download het "Developer Pack" (niet alleen de runtime)
  3. Voer het installatieprogramma uit met beheerdersrechten
  4. Start Visual Studio opnieuw na de installatie
  5. Controleer of de versie beschikbaar is in de keuzelijst met doelframeworks van het project

Visual Studio installeren en configureren

Aanbevolen edities van Visual Studio

Visual Studio Community Edition is gratis en volstaat ruimschoots voor Dynamics 365-ontwikkeling. De edities Professional en Enterprise bieden echter extra functies die de productiviteit in teams kunnen verhogen.

  • Community: Gratis voor individuele ontwikkelaars, opensourceprojecten, academisch onderzoek en kleine teams (tot 5 gebruikers)
  • Professional: Met CodeLens, geavanceerde debugging en testtools
  • Enterprise: Voegt architectuurdiagrammen, IntelliTest en geavanceerde tools voor codekwaliteit toe

Essentiële workloads en onderdelen

Selecteer tijdens de installatie van Visual Studio de juiste workloads, zodat u over alle tools beschikt die u voor Dynamics 365-ontwikkeling nodig hebt.

Vereiste workloads:

  • .NET desktop development: De basistools voor C# en .NET
  • Office/SharePoint development: (Optioneel) Als u geïntegreerde oplossingen bouwt
  • Azure development: (Optioneel) Voor integratiescenario's met de cloud

Afzonderlijke onderdelen om mee te installeren:

  • .NET Framework 4.6.2 targeting pack
  • .NET Framework 4.6.2 SDK
  • NuGet package manager
  • Git voor Windows (versiebeheer)
  • Class Designer (om objectmodellen te visualiseren)

Essentiële NuGet-pakketten voor Dynamics 365

SDK-basispakketten

De Dynamics 365 SDK wordt verspreid via NuGet-pakketten. Dat vereenvoudigt het beheer van afhankelijkheden en zorgt ervoor dat u compatibele versies gebruikt.

Belangrijkste NuGet-pakketten:

  • Microsoft.CrmSdk.CoreAssemblies: Basistypes van Dynamics 365 (IOrganizationService, Entity enz.)
  • Microsoft.CrmSdk.Workflow: Vereist voor aangepaste workflowactiviteiten
  • Microsoft.CrmSdk.XrmTooling.CoreAssembly: Hulpmiddelen voor verbinding en authenticatie
  • Microsoft.CrmSdk.XrmTooling.PluginRegistrationTool: Gebruikersinterface voor pluginregistratie

Versiecompatibiliteit

Gebruik in uw hele project altijd dezelfde versies van de SDK-pakketten. Gemengde versies kunnen bindingsfouten tijdens runtime veroorzaken.

💡 Pro Tip:

Use Package Manager Console for batch installation: Install-Package Microsoft.CrmSdk.CoreAssemblies -Version 9.0.2.46. This approach is reproducible and can be scripted for team environments.

Een pluginproject aanmaken

Stappen om het project aan te maken:

  1. Open Visual Studio en maak een nieuw project aan
  2. Selecteer Class Library (.NET Framework)
  3. Stel het doelframework in op .NET Framework 4.6.2
  4. Installeer de vereiste NuGet-pakketten
  5. Onderteken de assembly met een strong-name key

Dynamics 365-plugins debuggen

Plugins debuggen vraagt specifieke technieken, omdat ze binnen het Dynamics 365-platform draaien en niet in uw lokale ontwikkelomgeving.

Remote debugging met de profiler

De Plugin Registration Tool bevat een profiler die de uitvoeringscontext vastlegt, zodat u die in Visual Studio opnieuw kunt afspelen.

Lokaal debuggen met unittests

Schrijf unittests die de uitvoeringscontext van de plugin simuleren (mocken), zodat u snel kunt itereren tijdens de ontwikkeling.

Early-bound klassen met CrmSvcUtil

Early-bound klassen bieden controle tijdens het compileren en IntelliSense voor entiteitsattributen. U genereert ze met CrmSvcUtil of de Power Platform CLI.

Voordelen van early-bound klassen:

  • Typecontrole tijdens het compileren voorkomt tikfouten in attribuutnamen
  • IntelliSense-ondersteuning voor alle entiteitsattributen
  • Sterk getypeerde relaties en keuzelijsten (option sets)
  • Beter leesbare en beter onderhoudbare code

Best practices voor ontwikkeling

Belangrijkste werkwijzen:

  • Onderteken assemblies altijd met een strong-name key
  • Gebruik consistente naamgevingsconventies voor projecten en klassen
  • Voorzie degelijke exceptionafhandeling en logging
  • Geef elke plugin één duidelijk afgebakende taak
  • Schrijf unittests voor de pluginlogica
  • Gebruik bronbeheer (Git) voor alle code

Extensies voor Visual Studio

Verschillende extensies maken het ontwikkelen voor Dynamics 365 in Visual Studio aangenamer.

Aanbevolen extensies:

  • Power Platform Tools
  • SpecFlow voor BDD-tests
  • ReSharper voor codekwaliteit
  • GitHub Copilot voor AI-assistentie

Conclusie

Visual Studio in combinatie met .NET Framework 4.6.2 biedt een professionele ontwikkelomgeving voor maatwerk in Dynamics 365. Wie kwaliteitsvolle oplossingen wil opleveren, moet de frameworkvereisten, de juiste projectconfiguratie en de debugtechnieken goed beheersen.

Neem de tijd om uw ontwikkelomgeving correct op te zetten: dat betaalt zich terug gedurende de volledige levenscyclus van het project.

Hulp nodig bij je Dynamics 365-project?

We helpen je graag om deze werkwijzen toe te passen in je eigen Dynamics 365-omgeving.