Dynamics AX and .Net - A new technology offering from ProISV
I am sure others have thought as doing such as well, but ProISV has taken working with Dynamics AX business logic and objects from .Net to a new level.
Because I was really impressed with Kaspar and his team's work at ProISV, I asked if he would do an interview with me about what ProISV is offering. The following is that interview.:
1.) With ProISV offering, what all will a customer get with making the choice of going with the new AX.NET from ProISV?
For many years it has been possible to integrate with Microsoft Dynamics AX through the .NET Business Connector and earlier the COM client, but it is time consuming and inefficient. Now with AX.NET, a seamless integration to the business logic and data model in Microsoft Dynamics AX exists. So how does this benefit the customer?
By using AX.NET ISVs can now build richer and more flexible applications for their customers utilizing the power of Microsoft Dynamics AX and the rich user interface of .NET Win Forms, Windows Presentation Foundation (.NET WPF) and ASP.NET (including SharePoint).
AX.NET will also enable ISVs to ship custom .NET dll library together with their Microsoft Dynamics AX ISV solution. By building using the AX.NET technology it will enable full .NET integration to their Microsoft Dynamics AX application. Just by adding a reference to their project in Visual Studio, customers and 3rd party will be able to build custom solutions easily, which fit the specific local business needs.
With the coming introduction of the AX.NET Proxy technology, it will no longer be needed to install the Business Connector on clients. All that is needed is the standard .NET Framework which is also available on mobile devices running Windows Mobile. For years, connectivity has been a problem when integrating with Microsoft Dynamics AX, but with the AX.NET Proxy all you need is a single web service delivering access to the entire Microsoft Dynamics AX out of the box. The AX.NET technology therefore enables Microsoft Dynamics AX to run as a real Cloud service.
2.) How flexible is AX.NET really going to be?
AX.NET is extremely flexible because the AX.NET "AOT" is generated by the AX.NET Framework to the exact configuration of any Microsoft Dynamics AX Application. By using the .NET assembly generation tool, a .NET assembly representing any Microsoft Dynamics AX application can be built in minutes. It all happens automatically and includes the possibility to mirror the entire AOT, a specified area or layer.
Because your Microsoft Dynamics AX classes, tables and enums now become .NET objects, you can utilize the power of the entire .NET Framework to build your application. The AX.NET even includes support for retrieving and manipulating data in AX using .NET LINQ, which is very similar to the embedded SQL statements in X++.
Easy generation of the .NET "AOT" with AX.NET to fit a specific application. With a few clicks the Assembly Generator automatically generates a .NET Assembly containing your custom .NET "AOT".
Here are a few code examples of the applicability:
Selecting customer of type Person.
Creating, updating and deleting a customer.
Browsing the "AOT" in AX.NET using Intellicense in Visual Studio.
Methods are also available on tables and classes.
You can even use AX.NET to create Unit Tests in Visual Studio for Microsoft Dynamics AX. Here is an example:
As you can see the Microsoft Dynamics AX classes Map, Set, SetEnumerator have been automatically generated by AX.NET into the .NET interface IMap, ISet, ISetEnumerator. Even the Types enum in Microsoft Dynamics AX have been converted into a .NET Enum.
The possibilities for application of AX.NET are endless.
3.) So if a Partner was tasked at doing a good bit of .Net development for a customer, what will drive the Partner to use AX.NET, vs. building the same features out themselves?
One of the major benefits with using AX.NET is that ability to use standard .NET technologies known by most .NET developers to create rich applications that integrate with Microsoft Dynamics AX. Many .NET developers already know technologies like LINQ and Data Binding in .NET from working with data sources like Microsoft SQL Server. Now they can use the same technologies with Microsoft Dynamics AX using AX.NET out of the box, which makes it easier to find development resources.
AX.NET also improves development efficiency by support Intellicense for classes, tables and enums in Visual Studio. AX.NET also provides compile time validation of the integration towards Microsoft Dynamics AX. This can drastically reduce the amount of development and QA time used, because errors found during compilation by the developer can easily be detected and corrected during development.
If the Partner is using Team Foundation Server from Microsoft, they can use Continuous Integration to build and verify the .NET solution including the integration to Microsoft Dynamics AX on every check-in of code.
Having a development background I personally know, that all the mentioned improvements of the development experience not only make it more interesting to be a developer, but also saves a significant amount of time and thereby money.
Maintenance of a .NET solution integrating with Microsoft Dynamics AX is also greatly improved by using AX.NET. If changes are made to the Microsoft Dynamics AX application, compile errors are generated in the .NET solution instead of runtime errors that are much more difficult to diagnose.
In the next version of AX.NET the communication between AX.NET and Microsoft Dynamics AX can be tunneled through a single web service interface that we call AX.NET Proxy. Hereby the need to install the Business Connector on the local client is removed, as well as the requirement for being on the same domain. This will make implementations of .NET solutions that integrate with Microsoft Dynamics AX much easier and far more flexible.
4.) What is the planned Road Map for AX.NET, when will v1.0 be ready to go?
We are planning to release AX.NET v1.0beta in Q1 of this year. After that we are planning to validate and optimize AX.NET using feedback from pilot customers in Q2, and then release AX.NET v1.0 hereafter. We plan to license AX.NET based on a license per Microsoft Dynamics AX license and one per user. Since we plan for AX.NET to become a defacto technology, we anticipate to also price accordingly.
Where v1.0 uses the Business Connector directly to access Microsoft Dynamics AX, we are planning to include the AX.NET Proxy feature in v2.0 towards the end of 2010. The AX.NET Proxy technology will provide the same seamless integration to Microsoft Dynamics AX as AX.NET, but it will use web service technology as the link between AX.NET and Microsoft Dynamics AX instead of using the Business Connector directly as in v1.0. This will greatly increase the connectivity of AX.NET by proving integration to Microsoft Dynamics AX over the internet and across networks separated by firewalls, thus taking Microsoft Dynamics AX all the way to be truly Cloud enabled.
5.) What kind of support will exist for Partners who sell AX.NET as part of their implementations?
We are planning to provide training and support through online webinars and training sessions and will have a support channel available on proisv.com to handle the support process. It is our ambition to establish a community, which both AX and .NET developers will be able to use and provide content to as well, such as code examples, Q&A’s and other ideas to inspire the AX.NET community.
6.) What kind of training program is being developed, and what kind of certification will be required for Partners to sale and implement AX.NET?
Online training sessions will be available through the upcoming partner section of our website, proisv.com, from which our AX.NET users can learn about the technology. As such the fundamental prerequisite is to be a solid .NET developer as well as to know the business logic and objects in Microsoft Dynamics AX. So, if you know how to develop in .NET you can also use AX.NET, assisted by our online training material as well as the upcoming developer community on our website.
7.) Will you be present at Convergence, and be able to show off AX.NET there?
We are not currently planning to be present at Convergence. In the first haft of this year, we will be focusing all our energy on product development and to get pilot projects up and running. Sadly I don't think they are going to postpone Convergence for our sake. More likely though, we will participate at the Microsoft World Wide Partner Conference in July.
8.) Finally, what is the coolest feature about AX.NET that you think will really wow Partners and Customers?
The coolest feature must be the seamless integration to Microsoft Dynamics AX. The fact that elements from the AOT in Microsoft Dynamics AX now can automatically be accessed as real .NET objects without any custom code. With AX.NET it is now possible to browse through the generated "AOT" object in AX.NET seeing all the tables, classes and methods automatically available for easy access. We know this is something Microsoft really wanted to do, but we figured out how to get it done.
I would like to thank Kaspar and ProISV for the time with doing this interview. I am very excited about getting my hands on this new offering, and wanting to see how performance is with this new offering. How well it scales, etc.
Feel free to check out ProISV at thier website, located here.: ProISV Website
That's all for now, but check back soon as more to come!
"Visit the Dynamics AX Community Page today!"