Sorting out the DLL hell, Part 3: The Code

[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 Reading Sorting out the DLL hell, Part 3: The Code

Off-topic: A C# lesson learned about conditional operators

If it was hard to write, it should be hard to understand, that’s an unwritten rule-that-rules-them-all of programming. You absolutely love to apply syntactical stunts to impress your coworkers, especially if you do C# and they don’t, don’t you?

One of those stunts (at least from C/AL) perspective is a C-language type common feature known as conditional operator. It allows you to write this:

a = b ? c : d;

when you would normally (in C/AL, for example) get more eloquent:

if (b == true)
{
    a = c;
} else {
    a = d;
}

This (b == true) could have been replaced with just (b), but I put it there for clarity.

But! (There is always a “but”!)

(more…)

Continue Reading Off-topic: A C# lesson learned about conditional operators

Client Extensibility Demos

On Monday, June 15th I have delivered another session in Microsoft’s Road to Repeatability series of online demos about technical NAV features, this time covering Client Extensibility. The session went…

Continue Reading Client Extensibility Demos

Server Extensibility Demos

Yesterday, as a part of Microsoft’s Road To Repeatability program, I delivered a live meeting session about server extensibility in NAV in which I focused on certain areas of .NET…

Continue Reading Server Extensibility Demos

Control Add-ins and Version Compatibility–Update

Yesterday I posted a quick tip, which quickly got some comments about it being wrong. Since I know people who commented were unlikely to say something incorrect, I went to check on, because I myself experienced difficulties that made me write that post.

So, I analyzed to see who’s right and who’s wrong, or better yet – to see why different people might get different results.

Here’s the results.

(more…)

Continue Reading Control Add-ins and Version Compatibility–Update