Sorting out the DLL hell, Part 3: The Code

  • Post comments:58 Comments
  • Reading time:16 mins read

[Update, February 8, 2016: there is a new version of code from this post. Please check https://vjeko.com/dynamically-loading-assemblies-at-runtime]

Okay here we go. In this post I deliver the promised code that handles automatic deployment of all your assemblies to client and server, as needed.

For any of you who haven’t read the last two posts, I am talking about automatically deploying .NET assemblies to clients and server, from the database, on demand, at runtime.

This will be heavy on code, so fasten your seatbelt and brace for impact.

(more…)

Continue ReadingSorting out the DLL hell, Part 3: The Code

Sorting out the DLL hell, Part 2: The Solution

  • Post comments:7 Comments
  • Reading time:5 mins read

Deploying .NET assemblies to clients and servers in need is no simple affair. In my last post I have explained the problem, and announced the solution.

As promised, in this post I bring you the solution.

To be fully honest, this post only brings the conceptual solution, just a little brain game for you to train your .NET brain muscles a bit. The actual code I’ll deliver in the next post.

(more…)

Continue ReadingSorting out the DLL hell, Part 2: The Solution

Sorting out the DLL hell, Part 1: The Problem

  • Post comments:12 Comments
  • Reading time:6 mins read

Let me tell you right away if you need to read this post at all. If you never wrote a single .NET class library intended to be used as a .NET interoperability assembly from C/AL, or if you never ever deployed a .dll file into the Add-ins folder of either Service or RoleTailored Client, then you probably don’t want to read this post.

Good, since you are still reading it means that you either deployed your own or somebody else’s .NET stuff into NAV’s client or server’s Add-ins folders. If you ever did so, you probably did not enjoy the experience too much. If you did enjoy the experience, maybe you should not read any further either.

Even better! Since you are still here it means that you didn’t enjoy deploying assemblies. Let me break some good news – all your problems are now gone! And I am not talking NAV 2016, I am talking NAV 2013 and anything newer.

(more…)

Continue ReadingSorting out the DLL hell, Part 1: The Problem

When Should You Purchase The NAV License?

  • Post comments:5 Comments
  • Reading time:5 mins read

Microsoft Partners often postpone the actual purchase of the customer’s NAV license until the project is fairly close to go-live. In the meanwhile, they do the development and the testing on-site (or off-site) using their own partner license.

I’ve heard arguments (or better: excuses) to engage in this practice, and I have a very strong opinion on this. So, when is the right moment to actually purchase the NAV license for your customer?

Well, regardless of the fact that 1) you are contractually obliged to purchase the license for your customer at the first moment they get in touch with the solution (which is fairly early in the project), and the fact that 2) you are violating your licensing agreement with Microsoft if you deploy your partner license on third party’s infrastructure, there is 3) a fairly compelling technical reason why you might never want to even try doing any project work involving customer with your partner license.

(more…)

Continue ReadingWhen Should You Purchase The NAV License?

2nd rule of agile ERP: deploy gradually

  • Post comments:8 Comments
  • Reading time:5 mins read

Eat an elephantHow do you eat an elephant? One bite at a time. Swallowing it all at once might be tempting as it has all the potential you need to get into the next edition of Guinness World Records. Likewise, trying it with an ERP implementation has all the potential you need to get into to the next edition of Chaos Report. One way or the other.

ERP software is huge. It contains thousands of features potentially touching every single tiniest aspect of your business. Implementing ERP is about introducing change into your company, and change can be evolutionary, or revolutionary. Your pick.

(more…)

Continue Reading2nd rule of agile ERP: deploy gradually