1 / 27

Extending Microsoft Dynamics NAV through .NET Interoperability

Extending Microsoft Dynamics NAV through .NET Interoperability. Vjekoslav Babić Fortempo. Agenda. Introduction NAV before .NET Interop Overview of .NET Framework Development considerations Deployment considerations Demos. About the presenter. Vjekoslav Babić

regina
Download Presentation

Extending Microsoft Dynamics NAV through .NET Interoperability

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ExtendingMicrosoft Dynamics NAVthrough .NET Interoperability Vjekoslav Babić Fortempo

  2. Agenda • Introduction • NAV before .NET Interop • Overview of .NET Framework • Development considerations • Deployment considerations • Demos

  3. About the presenter • Vjekoslav Babić • Independent consultant for Microsoft Dynamics NAV

  4. About the topic • Microsoft Dynamics NAV • ERP is not an island anymore • C/AL is a very limited language • Microsoft .NET Framework • Standard development framework • Deep access to operating system • Rich palette of built-in libraries • Rich development ecosystem • Language independent

  5. NAV before .NET Interoperability • Limited to C/AL • Using other frameworks from NAV before .NET Interop • OCX • Automation • Shell

  6. OCX

  7. Automation

  8. Shell

  9. How does.NET interoperability help? • Simpler development, choice of languages • Simpler deployment, pure copy & paste works • Strong security • Very rich API, a lot of standard and 3rd party libraries • Limitations: works only with NST, no support for Classic Client

  10. DEMO • A short and cool .NET interoperability demo

  11. Overview of .NET Framework • Common Language Infrastructure • Assemblies • Security • Class Library • Memory Management • Reflection • Rich stack of functionality

  12. Common Language Infrastructure

  13. Assemblies • Contain executable code • Building blocks of .NET functionality • Portable Executable (PE) format • All .NET assemblies are accessible by default • Better control of deployment

  14. Security • Code Access Security • Validation and verification • Simple impersonation

  15. Class Library • Huge list of out-of-the-box APIs available for consumption • Base Class Library • Framework Class Library

  16. Memory Management • Garbage collector • Managed code

  17. Reflection • An important class library • Access to full .NET metadata • Access to .NET itself, including compilation

  18. Rich Stack of Functionality Picture by Soumyasch, http://en.wikipedia.org/wiki/File:DotNet.svg

  19. Development Considerations • Calling .NET functionality from NAV • Data type mapping between NAV and .NET • Using .NET specific functionality • Calling Web services using .NET interoperability I am going to demo all of this as we go.

  20. Calling .NET functionality • DotNet data type • NAV scope and garbage collector • Constructors, instances and static objects • Indexing • Comparison limitations • Events • Member naming limitations

  21. Data Type Mapping • Integers: • 16, 32 and 64 bit considerations • Signed vs. Unsigned • Strings: • Length considerations • Unicode considerations • Decimal vs. Double • Date, Time and DateTime

  22. Using .NET functionality • Arrays • Collections • Enumerations • Generics • Interfaces

  23. Calling Web services from NAV • Calling NAV web services • Calling non-NAV web services

  24. Deployment Considerations • Service Tier deployment • RoleTailored Client deployment • Classic Client deployment (for development purposes only) • Global Assembly Cache (GAC)

  25. DEMO • Connecting to another NAV instance through .NET Interop

  26. Questions & Answers

  27. THANK YOU! Feel free to ask any questions: vjekoslav.babic@fortempo.net Visit my blog: http://NavigateIntoSuccess.com/

More Related